8:30
delete 触发器在引用一个名为OLD的虚拟表时,无论用before还是after,它都能访问被删除的行。
18:45
char cChar='李'
System.out.println('过'+cChar);
使用使用单引号输出字符时,发现只输出数字,上网查找到这篇https://www.cnblogs.com/ibelieve618/p/6361870.html?utm_source=itdadao&utm_medium=referral,写的很详细
1、JAVA中,char占2字节,16位。可在存放汉字
2、char赋值
char a='a'; //任意单个字符,加单引号。
char a='中';//任意单个中文字,加单引号。
char a=111;//整数。0~65535。十进制、八进制、十六进制均可。输出字符编码表中对应的字符。(整型的位数都是2^(n-1)-1,但char不用直接(2^16)-1
注:只能放单个字符。
3、char运算
char类型是可以运算的因为char在ASCII等字符编码表中有对应的数值。
在JAVA中,对char类型字符运行时,直接当做ASCII表对应的整数来对待。
示例:
char m='a'; ——a。
char m='a'+'b'; ——Ã。 //char类型相加,提升为int类型,输出对应的字符。注,在CMD.exe用输出结果是问题?,不同的编码输出显示不一样。Eclipse中须改成UTF-8。
int m='a'+'b'; ——195。//195没有超出int范围,直接输出195。
char m='a'+b; ——报错。//因为b是一个赋值的变量。
char m=197; ——Ã。 //输出字符编码表中对应的字符。
char m='197; ——报错。//因为有单引号,表示是字符,只允许放单个字符。
char m='a'+1; ——b。//提升为int,计算结果98对应的字符是b。
char m='中'+'国'; ——42282。
char m='中'+'国'+'国'+'国'; ——报错。int转char有损失。因为结果已经超出char类型的范围。
int m='中'+'国'+'国'+'国'; ——86820
char m='中'+1; ——丮。//1是int,结果提升为int,输出对应的字符。
char m='中'+"国"; ——报错。String无法转换为char。
System.out.println('中'+"国"); ——中国。//没有变量附值的过程。String与任何字符用“+”相连,转换为String。
总结:
用单引号''标识,只能放单个字符。
char+char,char+int——类型均提升为int,附值char变量后,输出字符编码表中对应的字符
%%%%%
char用英文单引号括起来的十六进制字符代码值来表示单个字符,其格式为'\uXXXX',其中u时约定的前缀(u是Unicode的第一个字母)
某些特殊的字符可以利采用转义符'\'来表示,将其后面的字符转变为其他的含义,如'\t'代表制表符,'\n'代表换行符,'\r'代表回车 %%%%
当忘记写main函数时,只有在打输出语句时才会显示错误
ultiple markers at this line
- Syntax error on token ".", @ expected after this token
- Syntax error on token ";", @ expecte
写main()函数就好了
%%%%%
成员变量是在类的内部、方法(含语句块)外部定义的变量,其作用域从变量定义位置起到类结束(如果成员变量在后面,那么前面就不能使用)。
局部变量是在方法(含语句块)内部定义的变量(包括形参),其作用域从变量定义位置到方法(含语句块)结束。
对于Java,类的外部不能有变量的声明。
方法中的局部变量可以与方法外的成员变量同名,但使用时,如果在局部变量的方法体内,局部变量覆盖成员变量,输出的结果时局部变量的值。但在局部变量的方法体外,相反。
%%%
byte x1=1;
byte x2=1;
byte x3=x1+x2;
出错,因为byte/short/char在运算时默认先转化成int ,运算结束后,得到的结果为int,就变成了大类型赋值给小类型,就会出错,所以要强制转换 byte x3=(byte)(x1+x2);
当整型与浮点型时,一般是整型转换成浮点型。