質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
integer

integerは、一般的に整数を表します。プラスやマイナス、ゼロもなりうる全ての数です。(例 : -2, -1, 0, 1, 2...)

String

Stringは、ゼロ以上の文字から連続してできた文字の集合を扱うデータ型です。基本的にテキストを表すために使われます。

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

ソート

複数のデータを、順序性に従って並べ替えること。 データ処理を行う際に頻繁に用いられ、多くのアルゴリズムが存在します。速度、容量、複雑さなどに違いがあり、高速性に特化したものにクイックソートがあります。

Q&A

1回答

4369閲覧

javaのコマンドライン引数を昇順に並び替える方法

meron132

総合スコア2

integer

integerは、一般的に整数を表します。プラスやマイナス、ゼロもなりうる全ての数です。(例 : -2, -1, 0, 1, 2...)

String

Stringは、ゼロ以上の文字から連続してできた文字の集合を扱うデータ型です。基本的にテキストを表すために使われます。

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

ソート

複数のデータを、順序性に従って並べ替えること。 データ処理を行う際に頻繁に用いられ、多くのアルゴリズムが存在します。速度、容量、複雑さなどに違いがあり、高速性に特化したものにクイックソートがあります。

0グッド

0クリップ

投稿2021/03/22 11:46

編集2021/03/24 02:31

javaで、コマンドプロンプトで実行した際に起動引数が2個以上の場合は、起動引数を降順に並び替えて出力するというプログラムを作りたいです。
まず、起動引数を昇順に並び替えて出力したいのですが、実行してもそのようになりません。

java

1public class Task1_6 { 2 public static void main(String[] args){ 3 4 if(args.length == 1){ 5 System.out.println("起動引数を2個以上指定してください"); 6 } else{ 7 for(int i = 0; i < args.length; i++){ 8 for(int j = 0; j < args.length; j++){ 9 10 if(Integer.parseInt(args[i]) > Integer.parseInt(args[j])){ 11 String tmp = (args[i]); 12 args[i] = args[j]; 13 14 args[j] = tmp; 15 16 System.out.println(args[i]); 17 } 18 19 } 20 } 21 22 } 23 24 } 25 } 26 27

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maisumakun

2021/03/22 11:47

それは本当にJavaScriptのコードでしょうか?Javaではありませんか?(両者は別言語です)
meron132

2021/03/22 11:50

ご指摘ありがとうございます。 知識が身についておらずすみません。 Javaです。
退会済みユーザー

退会済みユーザー

2021/03/24 03:11 編集

ソースコードが読みにくいので、お手数をおかけして大変申し訳ありませんが、ソースコード部分を ```java 《ここにソースコードを貼り付ける》 ``` という形に変更して頂けないでしょうか? 現状の問題点は4つあります。 (1)args[i]とargs[j]で値の交換ができていない →argsはString(文字列)の配列なので、文字列しか格納できません。比較は数字にしないとできませんが、交換は文字列のまま処理すればいいのではないでしょうか? (2)昇順になっていない →ロジックを見直してください (3)出力ができていない →出力してください (4)合計値が計算・出力されていない →同様に計算して出力しましょう 学校の課題か何かであれば、先生がいると思うので、聞いてみましょう。
meron132

2021/03/24 02:34

まず、ソースコードが読みにくいとのこと、大変申し訳ありませんでした。 やり方を教えていただきありがとうございました。 (1)args[i]とargs[j]で値の交換ができていない (2)昇順になっていない (3)出力ができていない この点についてコードを修正してみました。 (4)合計値が計算・出力されていない これは上記の3点の問題が解決してからにしようと思います。 問題点を指摘してくださりありがとうございました。
退会済みユーザー

退会済みユーザー

2021/03/24 03:16

修正ありがとうございます。 3つと書いておきながら4つ目に気づいて慌てて追加したため、文面の数字が3つのままになっていました。すみません。3に特別な意味はないので、元のコメントを3から4に修正しました。 (1)の点のエラーは修正できたようですね。 次は(2)だと思います。 今回のソート方法はバブルソートというアルゴリズムだと思うので、詰まるようならそこから追っていくといいと思いますよ。どうしても修正しなくてはならないのはjの最初の値です。 頑張ってください。
guest

回答1

0

こちらが勉強になりますよ。

【Java】初心者用基礎命令文
https://qiita.com/mikimikiman/items/3eb48d425ee887280ce3
このページのなかの
「int 変数 = Integer.parseInt(数字に変換したい文字列);」
に注目です。

そしてこちら。
二つの値を比較する!Javaの関係演算子の使い方(サンプル付き)
https://eng-entrance.com/java-cal-comparison

「プログラミングする力」の大半は、「検索する力」です。
がんばってください。

投稿2021/03/22 22:51

FromMZ1500

総合スコア496

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

meron132

2021/03/23 05:26

ご丁寧に教えて頂きありがとうございます。参考にしつつ、考えてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問