java中怎么把ASCII码转成字符串格式?
importjava.util.*;importjava.text.*;classtThreadextendsThread{Stringcharacter;intdela...
import java.util.*;
import java.text.*;
class tThread extends Thread{
String character;
int delay;
tThread(String character, int delay){
this.character = character;
this.delay = delay;
}
public void run(){
try{
for(int i = 0 ; i < 25 ; i++){
String str = Thread.currentThread().getName();
if(str.equals("ds1")){
int a = 97 + i;
character = (char)a;
System.out.print("字母:"+character+" ");
Thread.sleep(delay);
}
else{
int a = i + 1;
character = (char)a;
System.out.print("数字:"+character+" ");
Thread.sleep(delay);
}
}
}
catch(InterruptedException e){}
}
}
public class Exercise6_1{
public static void main(String[] args){
String str1 = " ",str2 = " ";
tThread ds1 = new tThread(str1,1000);
tThread ds2 = new tThread(str2,1000);
ds1.start();
ds2.start();
}
}
运行的话会在character = (char)a; 这里出现imcompatible types的问题。求高手求大侠求各种帮助,谢谢啦~ 展开
import java.text.*;
class tThread extends Thread{
String character;
int delay;
tThread(String character, int delay){
this.character = character;
this.delay = delay;
}
public void run(){
try{
for(int i = 0 ; i < 25 ; i++){
String str = Thread.currentThread().getName();
if(str.equals("ds1")){
int a = 97 + i;
character = (char)a;
System.out.print("字母:"+character+" ");
Thread.sleep(delay);
}
else{
int a = i + 1;
character = (char)a;
System.out.print("数字:"+character+" ");
Thread.sleep(delay);
}
}
}
catch(InterruptedException e){}
}
}
public class Exercise6_1{
public static void main(String[] args){
String str1 = " ",str2 = " ";
tThread ds1 = new tThread(str1,1000);
tThread ds2 = new tThread(str2,1000);
ds1.start();
ds2.start();
}
}
运行的话会在character = (char)a; 这里出现imcompatible types的问题。求高手求大侠求各种帮助,谢谢啦~ 展开
3个回答
展开全部
哈哈,你的character定义为String类型。
可是看你写的这行character = (char)a;
你把一个char类型转换为String类型,当然不可以了。
下面的代码是转ascii的例子你可以参考下。
import java.io.UnsupportedEncodingException;
public class T {
public static void main(String[] args) throws UnsupportedEncodingException {
t1();//ASCII转换为字符串
t2();//字符串转换为ASCII码
}
public static void t1(){//ASCII转换为字符串
String s="22307 35806 24555 20048";//ASCII码
String[]chars=s.split(" ");
System.out.println("ASCII 汉字 \n----------------------");
for(int i=0;i<chars.length;i++){
System.out.println(chars[i]+" "+(char)Integer.parseInt(chars[i]));
}
}
public static void t2(){//字符串转换为ASCII码
String s="新年快乐!";//字符串
char[]chars=s.toCharArray(); //把字符中转换为字符数组
System.out.println("\n\n汉字 ASCII\n----------------------");
for(int i=0;i<chars.length;i++){//输出结果
System.out.println(" "+chars[i]+" "+(int)chars[i]);
}
}
}
可是看你写的这行character = (char)a;
你把一个char类型转换为String类型,当然不可以了。
下面的代码是转ascii的例子你可以参考下。
import java.io.UnsupportedEncodingException;
public class T {
public static void main(String[] args) throws UnsupportedEncodingException {
t1();//ASCII转换为字符串
t2();//字符串转换为ASCII码
}
public static void t1(){//ASCII转换为字符串
String s="22307 35806 24555 20048";//ASCII码
String[]chars=s.split(" ");
System.out.println("ASCII 汉字 \n----------------------");
for(int i=0;i<chars.length;i++){
System.out.println(chars[i]+" "+(char)Integer.parseInt(chars[i]));
}
}
public static void t2(){//字符串转换为ASCII码
String s="新年快乐!";//字符串
char[]chars=s.toCharArray(); //把字符中转换为字符数组
System.out.println("\n\n汉字 ASCII\n----------------------");
for(int i=0;i<chars.length;i++){//输出结果
System.out.println(" "+chars[i]+" "+(int)chars[i]);
}
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
character = Character.toString((char)a);
或者:
character = new Character((char)a).toString();
或者:
character = new Character((char)a).toString();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你用String去引用一个char,问题出在这里啦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询