主程序为何抛出异常了
老师前面的主程序都没有抛出异常,怎么最后又变成抛出异常了?
老师前面的主程序都没有抛出异常,怎么最后又变成抛出异常了?
2016-03-02
public static void main(String[] args) throws Exception{//这个地方抛不抛出异常都不会报错
byte[]arr=Covert.intToBytes(8143);
for(byte b:arr){
System.out.print(b+" ");
}
System.out.println();
System.out.println(Covert.bytesToInt(arr));
下一节里的如果主程序没有加抛出异常的话,就会报错
public class EncodeDemon {
public static void main(String[] args) throws Exception {//为什么这个地方要抛出异常
// TODO Auto-generated method stub
String s="慕课ABC";
byte[]byte1=s.getBytes();//转换成字节序列用的是项目编码默认的编码GBK
for(byte b:byte1){
//把字节(转换为int型)以十六进制方式显示
System.out.print(Integer.toHexString(b&0xff)+" ");//b&0xff取低八位,前面的0都不要
}
System.out.println();
byte[]byte2=s.getBytes("gbk");
for(byte b:byte2){
//gbk编码中文占两个字节,英文占一个字节
System.out.print(Integer.toHexString(b&0xff)+" ");
}
System.out.println();
byte[]byte3=s.getBytes("utf-8");
for(byte b:byte3){
//utf-8编码中文占三个字节,英文占一个字节
System.out.print(Integer.toHexString(b&0xff)+" ");
}
System.out.println();
//java是双字节编码 utf-16be
byte[]byte4=s.getBytes("utf-16be");
for(byte b:byte4){
//utf-16be中文占用两个字节,英文占用两个字节
System.out.print(Integer.toHexString(b&0xff)+" ");
}
System.out.println();
举报