java如何限制非法字符_java報錯:非法字符 \65307

import java.awt.*;

class TestPopupMenu

{

public static void main(String[] args)

{

Frame f = new Frame("TestMenuComponent");

f.setSize(500,300);

f.setBackground(Color.lightGray);

MenuBar mb = new MenuBar();

f.setMenuBar(mb);

PopupMenu pm = new PopupMenu("彈出式菜單");

mb.add(pm);

/*

容易在中文狀態下打出分號,報錯提示:非法字符\65307

糾錯過程:根據Unicode,將65307換算成16進制為FF1B,查找到對應的字符為中文

狀態下的分號

*/

MenuItem m1 = new MenuItem("菜單1");

MenuItem m2 = new MenuItem("菜單2");

MenuItem m3 = new MenuItem("菜單3");

pm.add(m1);

pm.add(m2);

pm.add(m3);

//f.add(pm); 這句不能加上,否則窗口中看不到popupmenu

f.setVisible(true);

//本示例中沒有彈出效果,可能是因為沒有加入“事件監聽”

}

}在寫語句

MenuItem m1 = new MenuItem("菜單1");

時,誤在中文輸入狀態下輸入了分號,運行時報錯:非法字符 \65307

經分析,因為字符編碼是Unicode字符集,所以想到將65307化為16進制,也就是FF1B,查閱unicode字符集,找到了對應的中文輸入法下的分號,這才發現自己寫代碼時輸入錯誤!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值