ちょっとは進んだかな?
とりあえず指摘されたとこは修正。何て間違いしてたんだ…orz
内容のほうは少しずつ進んでるような…そうでもないような?
CharacterクラスのisDigitで取得した文字が数字かどうか判定してるんだけど…全角数字も数字と認識するのね、これって。
public class Checker { //正しく数字が入力されたことを判断するプログラム ver.0.008 public static boolean isNumber(String value) { //null値の判定処理 if (value == null || value.length() == 0){ return true; } //変数の宣言 int chklng = value.length() , dot1 = value.indexOf(".") , dot2 = value.lastIndexOf(".") , plus = value.lastIndexOf("+") , minus = value.lastIndexOf("-") , ast = value.indexOf("*") , blank = value.indexOf(" "); boolean judge = true; //判定処理 if(dot1 == 0 || dot2 == chklng -1){return false;} if(dot1 != dot2){return false;} if(plus > 0 || minus > 0){return false;} if(ast > -1){return false;} if(blank > -1){return false;} for(int i=0; i
後から気づいたんだけど、これastとblank必要無いっぽいなあ…現状の結果はこんな感じ。
○結果
「123456」を渡したところ、「true」が返されました。「false」が返されるようにしてほしいな。
「−12.3456」を渡したところ、「true」が返されました。「false」が返されるようにしてほしいな。
全角半角の判断はどうすればいいんだろ。1バイト文字か2バイト文字かの判定とかすればいいのかな?