`
小牛犊
  • 浏览: 96979 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

字符串(String)杂谈学习笔记

阅读更多

1.在java中,一个char是2个字节(byte),而一个中文汉字是一个字符,也是2个字节。而英文字母都是一个字节,因此它也能保存在一个byte中,一个汉字却不能。(char:16,byte:8)。

 

2.char类型

public class ChineseTest1 {
	public static void main(String[] args) {
		char a='中';
		char b='国';
		byte c='a';
		byte d='b';
		char e='e';
		char f='f';
		String w="a";
		System.out.println(a);
		System.out.println(a+b);
		System.out.println(w+a);
		System.out.println(a+c);
		System.out.println("欢迎来到"+a+b);
		System.out.println();
		/*System.out.println("fewg"+a+b);
		System.out.println(a+e);
		System.out.println(c+"fewf");*/
	}
}

    运行结果:

  

中
42282
a中
20110
欢迎来到中国

    结论: (1)当char类型单独、“+”字符串输出时,如果char中的值为中文,则输出中文。

              (2)当char类型用“+”连接char类型或byte类型输出时,则输出ASCII码值,然后相加。

 

3.byte类型

public class ChineseTest1 {
	public static void main(String[] args) {
		char a='中';
		byte c='a';
		byte d='b';
		System.out.println(c);
		System.out.println(a+c);
		System.out.println(c+d);
		System.out.println(c+"fewf");
	}
}

  运行结果:

97
20110
195
97fewf

   结论:也就是说,不管byte是单独输出,还是和char,String类型一起输出,byte类型都是输出ASCII码值.

 

4.反转字符串

public class StringReverse {
	public static void main(String[] args) {
		String str = "A quick brown fox jumps over the lazy dog.";
		StringBuffer s = new StringBuffer(str);
		s = s.reverse();
		System.out.println(s);
	}
}

    运行结果:

   

.god yzal eht revo spmuj xof nworb kciuq A

 

5.字符编码

   (1)JAVA所采用的编码方案是UTF-16BE。

public class EncodeTest {
	public static void main(String[] args) {
		String s="str中国";
			try {
				String a=new String(s.getBytes(),"UTF-8");//转化为utf-8字符
				int c=s.getBytes("GBK").length;//转化为utf-8字符后的字节数
				System.out.println(c);
			} catch (UnsupportedEncodingException e) {
				e.printStackTrace();
			}
	}
}

   运行结果:

7

 

6.判断是否为汉字

public class EncodeTest2 {
 public static void main(String[] args) {
  String s="str中国";
  System.out.println(s.charAt(0));
  System.out.println(s.charAt(1));
  System.out.println(s.charAt(2));
  System.out.println(s.charAt(3));
  System.out.println(s.charAt(4));
  byte[] k=s.getBytes();
  byte[] b=new byte[5];
  System.out.println(k.length+"个字节");
  for(int i=0;i<k.length;i++){
   System.out.println("第"+(i+1)+"个字节的值是"+k[i]);
  }
  System.arraycopy(k, 0, b, 0, 4);//截取4个字符
  System.out.println(new String(b));
 }
}

 

7.

public class EncodeTest2 {
	public static void main(String[] args) {
		String s="str中国";
		System.out.println(s.charAt(0));
		System.out.println(s.charAt(1));
		System.out.println(s.charAt(2));
		System.out.println(s.charAt(3));
		System.out.println(s.charAt(4));
		byte[] k=s.getBytes();
		byte[] b=new byte[5];
		System.out.println(k.length+"个字节");
		for(int i=0;i<k.length;i++){
			System.out.println("第"+i+"个字节的值是"+k[i]);
		}
		System.arraycopy(k, 0, b, 0, 4);//截取4个字符
		System.out.println(new String(b));
	}
}

    运行结果:

s
t
r
中
国
7个字节
第1个字节的值是115
第2个字节的值是116
第3个字节的值是114
第4个字节的值是-42
第5个字节的值是-48
第6个字节的值是-71
第7个字节的值是-6
str?

 

分享到:
评论

相关推荐

    基于Keil实现字符串函数string.h的简单应用

    基于Keil实现字符串函数string.h的简单应用基于Keil实现字符串函数string.h的简单应用基于Keil实现字符串函数string.h的简单应用基于Keil实现字符串函数string.h的简单应用基于Keil实现字符串函数string.h的简单应用...

    305-字符串函数string.h应用举例(51单片机C语言实例Proteus仿真和代码)

    305-字符串函数string.h应用举例(51单片机C语言实例Proteus仿真和代码)305-字符串函数string.h应用举例(51单片机C语言实例Proteus仿真和代码)305-字符串函数string.h应用举例(51单片机C语言实例Proteus仿真和代码)...

    详解C++ string常用截取字符串方法

    在C++编程中,`std::string`是一个非常重要的数据类型,用于表示和操作字符串。本文将详细解析两种常用的C++ `std::string`截取字符串的方法:`find`和`find_last_of`,以及如何结合使用它们来满足各种字符串处理...

    Android图片Bitmap和字符串String之间的相互转换

    在Android开发中,处理图像数据是一项常见的任务,而Bitmap和String是两个核心的数据类型,分别代表位图图像和文本字符串。Bitmap对象用于存储和显示图像,而String则常用于保存和传输文本信息。本篇文章将深入探讨...

    C#字符串删除指定字符串|字符串删除子字符串

    在C#编程语言中,处理字符串是常见的任务之一,其中包括删除字符串中的特定部分或子字符串。本篇文章将详细探讨如何在C#中实现这一功能,包括多种方法和实用技巧。 首先,C#提供了多种内置方法来操作字符串,比如`...

    c#正则表达式截取指定字符串之间的字符串。类文件直接用就可以了~

    给写了2个方法,一个是直接截取单个需要的字符串,比如字符串string a="ab123456",我只需要提取3,那么就是单独截取就可以了,从2开始到4结束就行。 第二个是把所有的符合条件的字符串都截取出来,提取出来,比如...

    Delphi字符串快速替换函数,速度超快 秒杀自带的StringReplace函数

    通过分析和学习这个文件,我们可以深入理解高级字符串处理技术,并将其应用到自己的项目中,提高代码的运行效率。 总之,当Delphi内置的`StringReplace`函数无法满足性能需求时,开发者会寻求自定义解决方案,如`Q_...

    java完美按格式化字符串String转sql.date

    ### Java完美按格式化字符串String转sql.Date 在Java编程中,经常需要处理日期与时间相关的数据。特别是在数据库操作时,经常会遇到需要将字符串类型的日期转换为`java.sql.Date`类型的情况。本文将详细介绍如何...

    将string类型xml字符串转为json字符串

    本篇文章将详细讲解如何将string类型的XML字符串转换为JSON字符串,并介绍相关的技术知识。 首先,理解XML和JSON的基本结构是至关重要的。XML是一种树形结构的标记语言,通过标签来定义元素和属性,例如: ```xml ...

    TIA博途-字符转换为字符串以及截取字符串有效字符的具体方法示例.docx

    接下来,我们可以使用`CONCAT`函数或`STRING`构造函数将字符数组转换为字符串: ```scl ResultString := CONCAT(CharArray); // 或者 ResultString := STRING(CharArray); ``` 这样,`ResultString`就包含了'ABCDE'...

    c#中 base64字符串与普通字符串互转

    总结,C#中的Base64字符串与普通字符串互转是通过`System.Convert`类提供的`ToBase64String`和`FromBase64String`方法实现的。在进行转换时,需要确保对字符串的编码有准确的理解,以便正确地转换和还原。在实际应用...

    字符串比对String Compare.rar

    本项目“字符串比对String Compare”提供了一个简易的工具,用于直观地进行字符串的比较。该工具基于.NET Framework 2.0开发,用户在使用时需要注意系统可能需要安装此版本的.NET环境。 字符串比对涉及到的知识点...

    VB拆分字符串,分隔字符串

    在这里,`inputString`是你想要拆分的原始字符串,`delimiter`是用于标识子字符串边界的字符或字符串。例如,如果你有一个逗号分隔的字符串,你可以这样拆分: ```vb Dim str As String = "苹果,香蕉,橙子" Dim ...

    pb函数库之字符串操作函数

    返回值为一个字符串,该字符串是删除了string字符串左部空格的字符串。 4. Len()函数:Len()函数可以得到字符串的长度。其语法为Len(string),其中string是指定要计算长度的字符串。返回值为一个长整数,该整数是...

    [字符串]字符串提取(获取两个字符串中间的字符串)

    首先,C#提供了丰富的字符串类(System.String)和正则表达式类(System.Text.RegularExpressions)来帮助我们完成这项工作。在标准的字符串方法中,没有直接提供一个功能可以获取两个已知字符串之间的子串,但我们...

    字符串、String类和StringBuilder类

    本文将深入探讨字符串、String类以及StringBuilder类,帮助你更好地理解和应用这些基础知识。 首先,我们关注的是String类。在C#中,String类是不可变的,这意味着一旦一个字符串对象被创建,它的内容就不能被改变...

    String 字符串操作、比较、查找字符、替换、反转、分割等

    - `split(String regex)`:根据给定的正则表达式将字符串分割成多个子字符串,并返回一个包含这些子字符串的数组。 ### 示例代码 ```java public class TestJavaDemo01 { public static void main(String[] args)...

    C++实现的String字符串类

    然而,有时为了学习目的或者特定需求,我们可能需要自定义一个字符串类,就像这个作业所要求的那样。在这个“C++实现的String字符串类”中,我们将探讨类的设计、重载操作符、内存管理以及类的组合。 首先,一个...

    C# 字符串转十六进制串,16进制反向转回原字符串

    在C#编程中,字符串与十六进制之间的转换是一个常见的需求,特别是在处理数据存储、网络传输或者加密解密等场景。下面将详细讲解如何在C#中实现这一过程。 首先,我们要了解基本概念。字符串是由Unicode字符组成的...

    labview字符串拆分到数组 支持中文1

    学习这些函数的组合使用,能提高在LabVIEW中处理字符串的效率和精度。 总结,LabVIEW中的“字符串拆分到数组”功能是通过“字符串到数组”函数实现的,它支持包括中文在内的各种字符。理解这个函数的工作原理和使用...

Global site tag (gtag.js) - Google Analytics