Files
stringcheck/StringCheck_suzuki_1013.java

137 lines
3.2 KiB
Java
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import java.util.NoSuchElementException;
import java.util.Scanner;
public class StringCheck {
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ
// 表示文字列を設定する
String[] display;
display = new String[4];
display[0] = "いまなにしてる?";
display[1] = "何も入力されていません";
display[2] = "投稿文が長すぎます";
display[3] = "↓↓↓↓↓↓ 投稿されました ↓↓↓↓↓↓";
/*==========変数定義==========*/
String str; // 入力文章
// int lim = 10; // 文字数上限
/*=========動作==========*/
while (true) { // 空文字or文字数超過→再度入力待機状態に戻る
/*==========文字列読み取り==========*/
// いまなにしてる?
System.out.println(display[0]);
// 標準入力から1行読み込む+前後の空白を除去する
str = inputString();
/*==========文字数判定==========*/
// 空文字判定
if ( isEmptyInput(str) ) {
System.out.println("何も入力されていません");
continue;
}
// 文字数超過判定
if ( isTooLongInput(str) ) {
// if ( isTooLongInput(str,lim) ) {
System.out.println("投稿文が長すぎます");
continue;
}
/*==========正常入力==========*/
// // 空行を表示する
// System.out.println();
//
// // ↓↓↓↓↓↓ 投稿されました ↓↓↓↓↓↓
// System.out.println(display[3]);
//
// // 文字列を出力する
// System.out.println(str);
// 空行+↓↓↓↓↓↓ 投稿されました ↓↓↓↓↓↓+文字列出力
Submitted(str, display[3]);
break;
}
}
// 標準入力から1行読み込む+前後の空白を除去する
public static String inputString() {
String str = "";
try {
// 標準入力から1行分の文字列を読み取りstrに格納する
Scanner sc = new Scanner(System.in);
str = sc.nextLine();
//sc.close(); // NoSuchElementException
// 文字列の前後の空白を除去する
str = str.strip();
} catch ( NoSuchElementException err ) {
System.out.println("入力が受け付けられなくなったため、プログラムを終了します。");
System.exit(0); // 終了
} catch ( IllegalStateException err ) {
System.out.println("入力が受け付けられなくなったため、プログラムを終了します。");
System.exit(0); // 終了
}
return str;
}
// 空文字判定
public static boolean isEmptyInput( String str ) {
return str.length() == 0 ;
}
// 文字数超過判定
public static boolean isTooLongInput( String str ) {
return str.length() > 140 ;
}
// 文字数超過判定(上限指定)
public static boolean isTooLongInput( String str , int lim ) {
return str.length() > lim ;
}
// 投稿完了時
public static void Submitted( String str , String display ) {
// 空行を表示する
System.out.println();
// システム文字列を出力する
System.out.println(display);
// 入力した文字列を出力する
System.out.println(str);
}
}