前回の質問から、ソートまで進みました。
足し算のプログラムの結果(2つしかありませんけど)、昇順にしたいと思います。
どの位置にプログラムを追加すれば良いんでしょうか?
なかなか思うように動かないので、よろしくお願いします。
package sample;
/*
additionクラス
キーボード2つの数字を入力後、その足し算結果を返す
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
class addition
{
//mainメソッドが初めに呼ばれる
public static void main(String args[]) throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.print("aを入力してください:");
String str1 = br.readLine();
System.out.print("bを入力してください:");
String str2 = br.readLine();
System.out.print("cを入力してください:");
String str3 = br.readLine();
int a = Integer.parseInt(str1);
int b = Integer.parseInt(str2);
int c = Integer.parseInt(str3);
System.out.println("aは"+ a + "です"); //変数aの中身を表示
System.out.println("bは"+ b + "です"); //変数bの中身を表示
System.out.println("cは"+ c + "です"); //変数cの中身を表示
int d; //結果を入れる変数
int e; //結果を入れる変数
d = a+b; //演算して代入
e = a+c; //演算して代入
System.out.println(a + "+" + b +"=" + d +"です" );
System.out.println(a + "+" + b +"=" + e +"です" );
}
}
No.9ベストアンサー
- 回答日時:
文字数オーバーしますので これで理解してください。
/**
* This method initializes jTextField3
*
* @return javax.swing.JTextField
*/
private JTextField getJTextField3() {
if (jTextField3 == null) {
jTextField3 = new JTextField();
jTextField3.setBounds(new Rectangle(122, 175, 184, 27));
jTextField3.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyReleased(java.awt.event.KeyEvent e) {
System.out.println("jTextField3");
String str = jTextField1.getText();
int a = Integer.parseInt(str);
str = jTextField2.getText();
int b = Integer.parseInt(str);
int c=a+b;
str=Integer.toString(c);
jTextField3.setText(str);
jTextField1.requestFocus();
}
});
}
return jTextField3;
}
No.8
- 回答日時:
>GUIコンポーネント.setText(new String(new char[10]).replace("\0", "W"));
>「GUIコンポーネント.getPreferredSize().width、etPreferredSize().height」をGUIコンポーネント.setSizeで設定する。
>最後にGUIコンポーネント.setText("")でクリアーしてやる。
この手法を使ってプログラミングしました。
Java GUIデモ(加算、ソート) 2
http://ashtarte.pa.land.to/utf8/smt.cgi?r+sara/& …
No.7
- 回答日時:
>No.6 回答者: amanojaku6
>プロポーショナルフォントの最大幅の「"W"」(大文字)が「10」個表示可能な事が保障される
申し訳ございません、完全な保障ではありません、GUIコンポーネントによっては その文字数を超えると省略文字「...」(半角3文字分?)みたいな文字が入るので。
No.6
- 回答日時:
>No.5 回答者: amanojaku6
>「GUIコンポーネント.getPreferredSize().width、etPreferredSize().height」をGUIコンポーネント.setSizeで設定する。
>これでプロポーショナルフォントの最大幅の「"W"」(大文字)が「10」個入る事が保障される。
「入る」と言う表現は不適切でした、プロポーショナルフォントの最大幅の「"W"」(大文字)が「10」個表示可能な事が保障される、です。
No.5
- 回答日時:
>No.4 回答者: amanojaku6
>「GUIコンポーネント.getPreferredSize().width、etPreferredSize().height」をGUIコンポーネント.setSizeで設定する。
「GUIコンポーネント.getPreferredSize().width、GUIコンポーネント.getPreferredSize().height」をGUIコンポーネント.setSizeで設定する。
位置も同時に設定可能ならGUIコンポーネント.setBoundsで良い。
No.4
- 回答日時:
>No.3 回答者: amanojaku6
申し訳ございません、もっと簡単な方法がありました。
GUIコンポーネント.setText(new String(new char[10]).replace("\0", "W"));
「10」は文字数、「"W"」(大文字)はプロポーショナルフォントの中で一番 幅が広い。
「GUIコンポーネント.getPreferredSize().width、etPreferredSize().height」をGUIコンポーネント.setSizeで設定する。
これでプロポーショナルフォントの最大幅の「"W"」(大文字)が「10」個入る事が保障される。
最後にGUIコンポーネント.setText("")でクリアーしてやる。
※GUIコンポーネントが表示されてなくても使えます。
No.3
- 回答日時:
>No.2 回答者: amanojaku6
厳密に(というか本来は そうすべきなんですが)GUIコンポーネントの縦サイズを決定したい場合は
GUIコンポーネント.getGraphics()でGraphicsオブジェクト(インスタンス)を取得。
Graphicsオブジェクト(インスタンス).getFontMetrics()でFontMetricsオブジェクト(インスタンス)を取得。
FontMetricsオブジェクト(インスタンス).getHeight()でテキストの行の高さを取得。
GUIコンポーネントの縦サイズにはgetHeight()より少し大きめに設定してやる。
GUIコンポーネントの横サイズはgetHeight()を何倍かにしておけば良い。
(注).ただし、「GUIコンポーネント.getGraphics()」は実際にGUIコンポーネントが表示されてからでないとNullPointerExceptionが発生してしまう。
No.1
- 回答日時:
//----ソートはデータの並べ替えなので 1個の変数ではできないので新たに配列を追加して表示してみました。
import javax.swing.JFrame;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays; //追加
public class grtest extends JFrame {
public static void main(String args[]) throws IOException
{
int[] dat01 = new int[5]; //空箱5個用意
int[] dat02 = new int[5]; //空箱5個用意
int i,loop; //ループ用の変数その他
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
for(loop=0; loop<5; ++loop)
{
System.out.print("aを入力してください:");
String str1 = br.readLine();
System.out.print("bを入力してください:");
String str2 = br.readLine();
System.out.print("cを入力してください:");
String str3 = br.readLine();
int a = Integer.parseInt(str1);
int b = Integer.parseInt(str2);
int c = Integer.parseInt(str3);
System.out.println("aは"+ a + "です"); //変数aの中身を表示
System.out.println("bは"+ b + "です"); //変数bの中身を表示
System.out.println("cは"+ c + "です"); //変数cの中身を表示
int d; //結果を入れる変数
int e; //結果を入れる変数
d = a+b; //演算して代入
e = a+c; //演算して代入
dat01[loop]=d;
dat02[loop]=e;
System.out.println(loop+"回目 "+a + "+" + b +"=" + d +"です" );
System.out.println(loop+"回目 "+a + "+" + b +"=" + e +"です" );
System.out.println("\n\n\n");
}
System.out.println("\n\n\n");
//-----ソートなし表示 取り合えず dat01だけ表示あとでついかしてください。
System.out.println("ソートなし表示");
for(loop=0; loop<5; ++loop)
{
System.out.println(dat01[loop] );
}
Arrays.sort(dat01); //---ソート関数の呼び出し
System.out.println("ソートあり表示");
for(loop=0; loop<5; ++loop)
{
System.out.println(dat01[loop] );
}
}
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JSPやサーブレットでSystem.out...
-
[JAVA]try 内の変数を外で!?
-
JAVA 文字色変更
-
C言語のポインターに関する警告
-
データベースとのやり取り(サ...
-
文字列の引き算
-
ファイル名に変数を使う(Java)
-
JAVAでの占い
-
LC発振回路-ループ利得
-
javaで判別式のプログラミング...
-
バイナリ文字列の比較について
-
IPアドレスから組織やプロバイ...
-
JavaにはなぜGO TO ...
-
Unicode→EUC-JPに変換するクラ...
-
正規表現が上手くいきません。...
-
java.util.zipで作成したアーカ...
-
Java配列でNullPointerExceptio...
-
Path型をString型へ変換する(Java)
-
オブジェクトの中のプロパティ...
-
csvファイルを2次元配列に格納
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JSPやサーブレットでSystem.out...
-
[JAVA]try 内の変数を外で!?
-
C言語のポインターに関する警告
-
EclipseでJava
-
LC発振回路-ループ利得
-
改行の判定方法
-
JAVAのDouble型の小数点以下の...
-
文字列の引き算
-
java シンボルが見つかりません...
-
エクセルマクロ文で、赤文字セ...
-
vb6 オブジェクトライブラリは...
-
構文解析中にファイルの終わり...
-
「続行するには何かキーを押し...
-
java int integer
-
Javaのプログラムがどうしても...
-
JAVAでの占い
-
nullcline
-
Javaのコマンドライン引数を使...
-
JAVA 文字色変更
-
Javaでカレントディレクトリを...
おすすめ情報