当前位置: 首页 > news >正文

String StringBuffer和StringBuilder的区别 线程安全 tools:context=mainactivity 作用

 

目录

 

 

String、StringBuffer和StringBuilder的区别

线程安全

tools:context=".mainactivity" 作用 


String、StringBuffer和StringBuilder的区别

String:字符串常量,字符串长度不可变。

StringBuffer:字符串变量(Synchronized,即线程安全)。如果要频繁对字符串内容进行修改,出于效率考虑最好使用StringBuffer,如果想转成String类型,可以调用StringBuffer的toString()方法。
 

线程安全

是指:当你开了10个线程对StringBuffer同时进行处理10000次,那么总次数就是:1000000;要是使用StringBuilder就会少于10000000次。就是StringBuilder不是线程安全。

 

StringBuilder:字符串变量(非线程安全)。在内部,StringBuilder对象被当作是一个包含字符序列的变长数组。java.lang.StringBuilder是一个可变的字符序列,但不保证同步。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候(这种情况很普遍)。

 

其实无非就是在创建速度与线程安全之间不断的选择,其他的一些空间也是如此的情况.

tools:context=".mainactivity" 作用 

<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

tools:context="activity name" ,这个xml 布局就是渲染指定activity , manifest文件中设置了Theme 的话, 上图右边模拟器theme 样式也会跟着变化对应 theme。

在举例:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        tools:text="Q"
        android:id="@+id/tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

看图显示是  Q,只是在预览使用,context是显示主题使用的; 这些tools 属性主要针对的 上图右边那个模拟器 调试时候显示状态,编译中不起作用的,;

 

相关文章:

  • handler是在主线程中运行的,可以进行UI的绘制。 新建子线程刷新UI: 新建Handler是使用postDelayed进行耗时:
  • 让你彻底明白JAVA中堆与栈的区别, 以及==与equal的区别
  • Java多态总结,3大特征封装,继承,多态,继承属性 Java中private、protected、public和default的区别 android studio 单元测试: 单元测试 set
  • 自由划线的好用工具类
  • startService和bindService区别。 下面看看bind方式
  • static与final的区别
  • 同步与异步讲解,Service与Thread的区别
  • 怎样用游标查询手机音视频资源获取创建时间,这是获取地理位置的信息
  • 按时间分类显示图片应用gradview。
  • Android图片添加阴影效果的两种方式
  • git数据存储结构
  • git的工作区、暂存区、本地仓库、远程仓库
  • 彻底知道git checkout filename 命令,首先你的知道git存储结构。
  • android 默认不弹出键盘 Android EditText 失去焦点 解决recyclerview item点击不反应,获取不到焦点
  • gps定位,根据经纬度;
  • 【知识碎片】第三方登录弹窗效果
  • Laravel 中的一个后期静态绑定
  • LeetCode29.两数相除 JavaScript
  • Mithril.js 入门介绍
  • Object.assign方法不能实现深复制
  • Python利用正则抓取网页内容保存到本地
  • React16时代,该用什么姿势写 React ?
  • Spring Cloud(3) - 服务治理: Spring Cloud Eureka
  • springMvc学习笔记(2)
  • storm drpc实例
  • windows下使用nginx调试简介
  • 代理模式
  • 聊聊spring cloud的LoadBalancerAutoConfiguration
  • 前端自动化解决方案
  • 入手阿里云新服务器的部署NODE
  • 深度解析利用ES6进行Promise封装总结
  • 学习笔记TF060:图像语音结合,看图说话
  • 优秀架构师必须掌握的架构思维
  • 由插件封装引出的一丢丢思考
  • 转载:[译] 内容加速黑科技趣谈
  • #pragma once与条件编译
  • (145)光线追踪距离场柔和阴影
  • (动态规划)5. 最长回文子串 java解决
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)php新闻发布平台 毕业设计 141646
  • (南京观海微电子)——COF介绍
  • (四)JPA - JQPL 实现增删改查
  • (五)大数据实战——使用模板虚拟机实现hadoop集群虚拟机克隆及网络相关配置
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • ***通过什么方式***网吧
  • .gitignore
  • .Net 4.0并行库实用性演练
  • .NET CORE 2.0发布后没有 VIEWS视图页面文件
  • .Net core 6.0 升8.0
  • .NET MVC第五章、模型绑定获取表单数据
  • .NET Project Open Day(2011.11.13)
  • .net实现客户区延伸至至非客户区
  • .pyc文件是什么?
  • /etc/motd and /etc/issue
  • ??myeclipse+tomcat