• 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): 传递字符串,判断字符串中的字符是否相同,忽略大小写			
    		 */
    	}
    
    }
    

      

  • 相关阅读:
    T4模板使用记录,生成Model、Service、Repository
    sortablejs + vue的拖拽效果 列表个数不固定 刷新后保持拖拽后的效果
    vue获取input焦点,弹框后自动获取input焦点
    vue proxy 跨域代理
    vue 同步 $nextTick setTimeout 执行的顺序
    js手写日历插件
    js数组随机排序
    vue自定义插件
    elementui 自定义表头 renderHeader的写法 给增加el-tooltip的提示
    awit的用法,等待执行结果
  • 原文地址:https://www.cnblogs.com/SasaL/p/10108348.html
Copyright © 2020-2023  润新知