使用GUI技术输出用星号(*)表示的一个长方形,但结果却没有对齐,怎么解决,是因为星号“×”和空格“ ”大小不一样吗
[img=http://][/img]
import javax.swing.JOptionPane;
public class Title2_20 {
/**
* @param args
*/
public static void main(String[] args) {
//声明变量
int a,b,i,j;
String str1,str2,result;
String num[][];
//使用GUI技术提示用户输入数据
str1=JOptionPane.showInputDialog("输入长方形的长:");
str2=JOptionPane.showInputDialog("输入长方形的宽:");
//将String转变为整数
a=Integer.parseInt(str1);
b=Integer.parseInt(str2);
result="你输入的长方形的长,宽为:"+a+", "+b+"\n";
//初始化数组
num=new String[b][a];
//对数组对行星号(*)赋值
for(i=0;i<b;i++)
{
for(j=0;j<a;j++)
{
if(i==0) num[0][j]="*";
else if(i==b-1) num[i][j]="*";
else{
if(j==0||j==a-1)
num[i][j]="*";
else num[i][j]=" "; //对没有赋星号(*)的数组,进行空格赋值,否则就默认为null
}
}
}
//进行结果输出操作,将数组赋值给String类型的result。
for(i=0;i<b;i++)
{
for(j=0;j<a;j++)
result=result+" "+num[i][j];
result=result+"\n";
}
//使用GUI技术显示结果。
JOptionPane.showMessageDialog(null, result,"结果",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
}
但输出结果是这样:
你输入的长方形的长,宽为:5,5
*****
* *
* *
* *
*****
我想要的结果是这样的
*****
* *
* *
* *
*****
为什么出现这种问题呢
[解决办法]
这好像也分不同字体的,都用全角的试试呢。。。