StringDemo
package cn.sasa.demo2; public class StringDemo { public static void main(String[] args) {
//String 底层采用的是字符数组
//private final char value[]
//private 修饰说明value只能在String类内部使用,而且又没有提供get方法,所以外部无法获取value数组,就无法改变数组中元素的值
//final修饰说明value是常量,一旦创建,就不能被改变,value一旦被初始化成某个数组,将永远指向这个数组,不可能再指向其它的数组了 //String 一旦创建就不能更改,但是变量的内存地址是可以改的
String str = "abc";
System.out.println(str);
//在内存中只有一个对象,这个对象在字符串常量池中
str = "bcd";
System.out.println(str); //内存中有两个变量,一个在堆中,一个在字符串常量池中
String str1 = new String("bcd");
System.out.println(str1);
System.out.println(str == str1); //==============================
//------String的构造方法-----------------
//默认字符集: 操作系统中的默认编码表, 默认编码表GBK,中文编码是负数
//public String(byte[] bytes) //将字节数组转成字符串
//public String(byte[] bytes, int index, int length) //将字节数组的一部分转成字符串
String str2 = new String(new byte[] {-77,-99,79});
System.out.println(str2); String str3 = new String(new byte[] {111,86,33,55,66,77},2,3);
System.out.println(str3); //public String(char[] chars) //将字符数组转成字符串
//public String(char[] chars, int index, int length) //将字符数组的一部分转成字符串
String str4 = new String(new char[] {'h','a','h','a'});
System.out.println(str4); //length()
System.out.println(str4.length()); //substring(int begin)
//substring(int begin, int end)
System.out.println(str4.substring(2));
System.out.println(str4.substring(1,3)); //contains(String str)
System.out.println(str4.contains("ff"));
System.out.println(str4.indexOf('d'));
System.out.println(str4.indexOf('a')); /**
* * int length(): 返回字符串的长度
* String substring(int beginIndex,int endIndex): 获取字符串的一部分
* String substring(int beginIndex): 获取字符串的一部分
* boolean startsWith(String prefix): 判断一个字符串是不是另一个字符串的前缀,开头
* boolean endsWith(String prefix): 判断一个字符串是不是另一个字符串的后缀,结尾
* boolean contains (String s): 判断一个字符串中,是否包含另一个字符串
* int indexOf(char ch): 查找一个字符,在字符串中第一次出现的索引,被查找的字符不存在,返回-1
* byte[] getBytes(): 将字符串转成字节数组,此功能和String构造方法相反,byte数组相关的功能,查询编码表
* char[] toCharArray(): 将字符串转成字符数组,功能和构造方法相反
* boolean equals(Object obj): 方法传递字符串,判断字符串中的字符是否完全相同,如果完全相同返回true
* boolean equalsIgnoreCase(String s): 传递字符串,判断字符串中的字符是否相同,忽略大小写
*/
} }
StringDemo的更多相关文章
- Object-C,NumberDemo和StringDemo
晚上抽空写了2个Demo.第1个是演示字符串,第2个是演示数组和可变数组.只用到了几个基本的方法和基本语句. NSString字符串对象,NSNumber和NSMutableNumber,if语句,N ...
- Java 经典入门(一)
一.什么是 Java 技术?为何需要 Java? Java 是由 Sun Microsystems 在 1995 年首先发布的编程语言和计算平台.有许多应用程序和 Web 站点只有在安装 Java 后 ...
- 【Java学习系列】第2课--Java语法及面向对象
本文地址 分享提纲: 1. Java程序特点 1.1 基本语法 1.2 字符串 1.3 变量 1.4 Java数组 1.5 Java枚举 1.6 Java修饰符 1.7 Java编译制定在制定目录 2 ...
- java.lang.String.getBytes(String charsetName)方法实例
java.lang.String.getBytes(String charsetName) 方法编码将此String使用指定的字符集的字节序列,并将结果存储到一个新的字节数组. 声明 以下是java. ...
- JAVA基本类库介绍
我们曾经讲过,Java已经为编程者编制了许多类,这些类已经经过测试,基本上不存在错误,这些类都是我们编程的基础.如果不利用这些已存在的类,我们的 编程工作将变得异常复杂,所以我们应尽可能多的掌握Jav ...
- String类的常用判断方法使用练习
选取了一些常用的判断方法进行了使用练习,后续跟新其他方法 package StringDemo; // String类的判断方法解析 // 1:boolean equals(); // 判断字符串是否 ...
- String类的构造方法详解
package StringDemo; //String类的构造方法详解 //方法一:String(); //方法二:String(byte[] bytes) //方法三:String (byte[] ...
- [Java 基础]字符串
String类 实例化String对象 String 对象初始化方式有多种. 如下代码中,各种初始化方式的效果是一样的,初始化后,String 对象的内容为 "hello" . p ...
- 【JAVA 文件概述】
一.概述 使用此类的原因: 该类将文件或者文件夹封装成对象.方便对文件与文件夹的属性信息进行操作.File对象作为参数传递给流的构造函数.要求:使用File类的常用方法. windows平台下,目录分 ...
随机推荐
- TI am335x am437x PRU
http://bbs.eeworld.com.cn/thread-355798-1-1.html
- Ansible and FileBeta
使用Ansible通过ssh批量读取和修改Client设备 1. 安装ansible工具 apt-get install ansible 2. 添加需要访问的client信息 ansible配置文件如 ...
- php框架之odp(一)
熟悉odp框架的使用已经快一个月了,今天总结一下.odp和yii都是成熟的常用的php框架,因为odp是公司内部开发的,且公司内部用odp的较多,所以我就从odp框架入手.仅仅纪录自己的学习体会 一. ...
- 【LINUX】——如何配置宿主机和虚拟机IP在同一网段
宿主机:win7 10.8.2.50 255.255.255.0 虚拟机:redhat 如果使用 NAT 的网络连接方式,虚拟机的 IP 会被分配为 192.168.*.* 网段,从虚拟机 ping ...
- ffmpeg 移植到 android 并使用
同步更新至个人blog:http://dxjia.cn/2015/07/ffmpeg-porting-to-android/ 空闲做了个小应用,从视频里截图,然后再将截图拼接为一个gif动画: 起初使 ...
- Async Performance: Understanding the Costs of Async and Await
Stephen Toub Download the Code Sample Asynchronous programming has long been the realm of only the m ...
- Ubuntu上运行Blender,在控制台上查看运行结果
1.首先在控制台打开Blender. 具体操作:找到Blender的安装路径,我的是:/home/lcx/下载/blender-2.78c-linux-glibc219-x86_64 $cd /hom ...
- 解决 Spring Oauth2 RedisTokenStore storeAccessToken 报错 java.lang.NoSuchMethodError: org.springframework.data.redis.connection.RedisConnection.set
原因是Spring 版本兼容问题 参考: https://blog.csdn.net/smollsnail/article/details/78954225 继承 RedisTokenStore 修改 ...
- 如何用Baas快速在腾讯云上开发小程序-系列4:实现客户侧商品列表、商品详情页程序
版权声明:本文由贺嘉 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/431172001487671163 来源:腾云阁 h ...
- AI,大数据,复杂系统 最精 40本大书单
AI,大数据,复杂系统 最精 40本大书单 原创 2017-10-30 Peter 混沌巡洋舰 如果这篇文的题目变成最全书单,那么这篇文会变得又臭又长,这个年代,关于人工智能和大数据的书,没有一万本也 ...