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平台下,目录分 ...
随机推荐
- Go Revel - Modules(模块)
revel中的模块是一个可以插入到应用中的包, 它允许从第三方引入至应用,并在它和应用之间共享控制器.视图与资源等数据. 一个模块应当具有和revel应用相同的结构."主"程序会以 ...
- iproute2应用
linux目前都支持ip命令,与ifconfig类似,但ifconfig的软件net-tools早不更新了,ip功能更强大,推荐使用iproute2套件. ip可以完美替换常用的网络命令,用法如下: ...
- CEO退休
早上刚来公司就收到群发邮件,说CEO退休了,在公司服务了22年.以后还是会part time做vice chairman.其实在公司也没打过几次照面...就知道是个和善的老人,祝他退休生活幸福! 我的 ...
- 配置 -- php运行报Call to undefined function curl_init()的解决办法
很早之前就出现过这个问题,网上百度了下,答案千篇一律,都是说: 1.在php.ini中开启curl扩展 2.将php目录下的libeay32.dll.ssleay32.dll.php5ts.dll拷贝 ...
- RedHat Linux7.3 使用yum安装时报错,改用CentOS yum源
在使用redhat linux的yum来安装或者更新软件的时候会有如下提示: [root@node1 home]# yum install package_name Loaded plugins: p ...
- Ubuntu14.04下安装MATLAB后,通过命令行打开其图形界面
安装的是Matlab R2017a,使用的是默认安装目录,安装在目录/usr/local/MATLAB/R2017a/bin中.那么安装完成之后系统不会给Matlab添加系统路径,只有把终端切换到安装 ...
- vector的多套遍历方案
1.迭代器 begin,end,*it++ 2.下标法 3.at函数(GetAt) 4.指针法 指针移到头部rewind.
- [Algorithm] Polynomial and FFT
排序:nlogn 二分查找:logn <-- 利用单调性,查n次,每次logn Multiply the following pairs of polynomials using at most ...
- 04单例模式Singleton
一.什么是单例模式 单例模式是一种对象创建型模式,使用单例模式, 可以保证为一个类只生成唯一的实例对象.也就是说, 在整个程序空间中,该类只存在一个实例对象. 其实,GoF对单例模式的定义是:保证一个 ...
- lua第三方库
一.Lua 包管理工具 1.LuaRocks luarocks 是Lua常用的包管理工具(还有一个是LuaDist),其安装方式请参考官网:https://luarocks.org/#quick-st ...