Java常用转义字符
- \t制表符:一个制表符占据4个字符的宽度,从而实现对齐的功能
String name = "小k";
double age = 78;
String hobby = "敲代码";
System.out.println("\ta");
System.out.println("aaaaa");
/*结果为:
a
aaaaa
*/
System.out.println("姓名\t\t成绩\t\t爱好");
System.out.println(name + "\t\t\t" + age + "\t\t" + hobby);
/*结果为
姓名 成绩 爱好
小k 78.0 敲代码
*/
到这里可能会有人说\t的功能就是为了让界面显式的更加整齐,那用空格或Tab不就能代替吗?首先\t其实就是tab的显式表示,之所以用\t而不是用Tab是为了提高代码的可读性;其次\t的作用不仅仅于此,在将内存中的数据写入到其他文件中,\t可以保留数据格式的完整性
/**
* 将两个字符串写入.csv文件中
*/
@Test
public void test(){
String s1 = "123456,20000000,1130124214,1312312312322222222";
String s2 = "123456\t,20000000\t,1130124214\t,1312312312322222222\t";
try {
FileWriter fileWriter = new FileWriter("f:\\a.csv");
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
bufferedWriter.write(s1);
//换行写入
bufferedWriter.newLine();
bufferedWriter.write(s2);
bufferedWriter.newLine();
bufferedWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}
执行程序后可以发现写入的.a.csv文件中以\t写入的s2较之于s1而言保留了数据的格式,且自动实现了左对齐,除此之外当我们点开第一行中的最后一个以科学计数法显式的数据发现该数据的大小发生了变化
由此可知\t在导出数据,尤其是导出大额数据时有着很好的效果
- \n换行符:实现换行
@Test
public void test1(){
System.out.print("小明学java");
System.out.print("小红学c++");
//输出结果为:小明学java小红学c++
System.out.print("\n");
System.out.print("小明学java");
System.out.print("\n");
System.out.print("小红学c++");
//输出结果为:
// 小明学java
// 小红学c++
//在java中System.out.println()与"\n"有着相同的作用
System.out.print("小明学java");
System.out.print("小红学c++");
//输出结果为:小明学java小红学c++
System.out.println();
System.out.print("小明学java");
System.out.println();
System.out.print("小红学c++");
//输出结果为:
// 小明学java
// 小红学c++
}
- \:为了输出’‘字符,因为常见的转义字符都是以’\‘开头,所以当你输入’‘时,Java会自动认为你要输入转义字符,因此想要单独的输出’‘字符需要用’'字符进行转义
System.out.println("\\");
//输出结果为:\
- \r:回车符:与\n不同,\r的作用机理是讲光标移动到输入行的行首,达到后输入的覆盖前输入的
System.out.println("hhh\rhei");
//输出结果为:hei
System.out.println("hh\rhei");
//输出结果为:hei
System.out.println("hhhh\rhei");
//输出结果为:hei
Java注释
- 单行注释
- 格式:
//注释内容
- 使用环境:用来解释某句代码的作用
- 格式:
System.out.println("hhh\rhei");
//输出结果为:hei
- 多行注释
- 格式:
/* 注释内容 */
- 使用环境:用来注释暂时不用的代码
- 格式:
/*System.out.println("hhh\rhei");
System.out.println("hhhh\rhei");
System.out.println("hhhh\rhei");
System.out.println("hhhh\rhei");
System.out.println("hhhh\rhei");
*/
- 文档注释
- 格式:`/** *注释内容 */
- 注意事项:javadoc文档生成器会把文档注释里的所有文本都添加到一个HTML段落里。它可以用来为你的源代码产生外部文档。
- 使用环境:在任意的公有类、接口、方法和源码里的类或实例变量前面
/**
* 将两个字符串写入.csv文件中
*/
@Test
public void test(){
String s1 = "123456,20000000,1130124214,1312312312322222222";
String s2 = "123456\t,20000000\t,1130124214\t,1312312312322222222\t";
try {
FileWriter fileWriter = new FileWriter("f:\\a.csv");
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
bufferedWriter.write(s1);
bufferedWriter.newLine();
bufferedWriter.write(s2);
bufferedWriter.newLine();
bufferedWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}
Java代码规范
- 类、方法的注释,要用文档注释
- 对于操作用单行或多行注释,主要是给代码的维护者看,着重告诉读者为什么可以这样写,如何修改,注意什么问题等
- 使用tab操作,实现缩进,默认整体向右移动,用shift+tab整体向右移
- 运算符和=两边习惯性各加一个空格
- 源文件使用utf-8编码
- 行宽度不要超过80字符
- 代码编写次行风格(换行写前大括号,换行写后大括号)和行尾风格(行尾写前大括号,换行写后大括号)
- java包名格式为小写单词+‘_’,防止和Java的内置关键字和保留字冲突
- java类名格式为大驼峰(每个单词的首字母大写)
- java的方法名和对象名以及属性名均遵循小驼峰(多个单词的首单词的首字母小写,剩余单词首字母大写;一个单词时单词的首字母要小写)
Java基本数据类型
基本数据类型
-
数值型
整数类型:byte[1],short[2],int[4],long[8]:一个字节(byte)有八个比特(bit)
Java中整数类型所占用的内存是固定的,不受操作系统的影响,以保证Java程序的可移植性
Java默认为int类型,long型数据后面要加L:111L
大放小不兼容,会损失精度;小放大兼容,但会浪费储存空间
浮点类型:float[4],double[8]
浮点数在机器中存放形式的简单说明:浮点数=符号位+指数位+尾数位
尾数部分可能丢失,造成精度损失(小数都是近似值)
浮点类型所占用的内存也是固定的,与整数类型相似
Java默认为double类型,float类型数据后面加F:1.1F
浮点型常量的表示形式:十进制和科学计数法
通常情况下使用double类型
浮点数陷阱:2.7和8.1/3的结果不完全一样,计算机在计算后者的情况下对8.1之后的位数是按精度去计算的
两个运算之后的小数进行相等判断时不能用’==’,应该用两个数的差值的绝对值在某个精度范围内判断
-
字符型:char[2]
字符常量使用单引号(’’)括起来的字符
在java中,char的本质是一个整数,在默认输出时,是unicode码对应的字符
char类型可以运算
字符型存储到计算机中,需要将字符对应的码值(整数)找出来
存储:‘a’=>码值97=>二进制(1100001)=>存储
读取:二进制(1100001)=>97=>‘a’=>显示
字符编码表
ASCII(ASCII编码表 一个字节表示,一共128个字符,实际上一个字节可以表示256个字符,只用128个(表达常用字符够用了))
Unicode(Unicode编码表 2个字节表示字符 字母和汉字统一都是占用2个字节)
utf-8(编码表,大小可变的编码 字母用1个字节,汉字用3个字节)
gdk(可以表示汉字,而且范围广,字母用1个字节,汉字用2个字节)
big5码(繁体中文,台湾,香港)
-
布尔型:boolean[1]
不可以用0或非0的整数替代false和true
-
自动类型转换
容量大的转为容量小的会损失精度,报错;容量小的转为容量大的会自动转换
整型容量要小于浮点型容量
byte、short和char之间无法自动转换
byte、short、char之间可以计算,在计算时首先转换为int类型(同种数据类型也是转换为int类型)
Boolean型不参与类型转换
-
强制类型转换(容量大—>容量小):(数据类型)hhh,可能造成精度降低或溢出,有时候后果很严重!谨慎使用!
char类型可以保存int型的常量值,不能保存int型的变量值,需要强制转换
-
基本数据类型和String类型的转换
基本---->String:int s1 = 1;String S2 = S1 + ""; String---->基本:String s2 = "233";int num1 = Interger.parseInt(s2); String转成char型指取出String的第k个字符
最后
最后再给Java入门的朋友们分享一下日后经常使用的API中文在线文档
这篇文章主要介绍了Java的常用转义字符的使用细节和注意事项、注释的使用、代码规范的介绍以及Java基本数据类型的类型和类型转换的使用,希望大家可以有所收获。同时,由于笔者水平有限,文章可能出现一些错误,希望大家可以多多批评指正,希望我们能够共同进步!