タグ付けされた質問 「java」

Javaは人気のある高水準プログラミング言語です。言語自体の使用または理解に問題がある場合は、このタグを使用してください。このタグが単独で使用されることはめったになく、[spring]、[spring-boot]、[jakarta-ee]、[android]、[javafx]、[gradle]、および[maven]と組み合わせて使用​​されることがほとんどです。

3
IntelliJでメインクラスとしてクラスを選択できない
入れ子になったフォルダー階層に一連のファイルを追加したIntelliJのJavaプロジェクトがあります。これらのファイルの多くはテスト用であり、mainメソッドが含まれているため、実行できるはずです。しかし、私はこれを行う方法を理解できません。 IntelliJは初めてで、以前のファイルは「main()メソッドの宣言を含むJavaクラス」に対応する記号でプロジェクト階層に表示されています。ただし、このシナリオでは、「ソースルートの外にあるJavaクラス」に対応する記号が表示されます。 では、これらのファイルをコンパイルして実行するにはどうすればよいですか?

1
Spring Java構成で@Beanアノテーション付きメソッドを呼び出す
スプリングインジェクションが@Beanアノテーション付きの呼び出しメソッドをどのように処理するかについて知りたいです。私が入れた場合は@Bean、インスタンスのメソッドに注釈を、と戻り、私はそれがメソッドを呼び出して、返されたインスタンスを取得することにより、Beanを作成するために、春を告げることを理解しています。ただし、他のBeanを接続したり、他のコードを設定したりするために、そのBeanを使用する必要がある場合があります。これを行う通常の方法は、@Bean注釈付きメソッドを呼び出してインスタンスを取得することです。私の質問は、なぜこれが原因でBeanの複数のインスタンスが浮かんでいないのですか? たとえば、次のコード(別の質問からの抜粋)を参照してください。このentryPoint()メソッドにはの注釈が付けられている@Beanので、Springがの新しいインスタンスをBasicAuthenticationEntryPointBeanとして作成すると想像します。次に、entryPoint()configureブロックで再度呼び出しentryPoint()ますが、Beanインスタンスを返しているようで、何度も呼び出されていません(ロギングを試みましたが、ログエントリが1つしかありませんでした)。entryPoint()構成の他の部分で複数回呼び出す可能性があり、常に同じインスタンスを取得します。これに対する私の理解は正しいですか?Springは、アノテーションが付けられたメソッドの魔法のような書き直しを行い@Beanますか? @Bean public BasicAuthenticationEntryPoint entryPoint() { BasicAuthenticationEntryPoint basicAuthEntryPoint = new BasicAuthenticationEntryPoint(); basicAuthEntryPoint.setRealmName("My Realm"); return basicAuthEntryPoint; } @Override protected void configure(HttpSecurity http) throws Exception { http .exceptionHandling() .authenticationEntryPoint(entryPoint()) .and() .authorizeUrls() .anyRequest().authenticated() .and() .httpBasic(); }
98 java  spring  cglib 

30
Eclipseの隠された機能[終了]
現在のところ、この質問はQ&A形式には適していません。私たちは回答が事実、参考文献、または専門知識によってサポートされることを期待しますが、この質問はおそらく議論、議論、投票、または拡張された議論を誘います。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 8年前に閉鎖。 ロックされています。この質問とトピックへの回答はロックされています。質問はトピックから外れていますが、歴史的に重要です。現在、新しい回答や相互作用を受け入れていません。 わかりにくい質問かもしれませんが、誰もがこれらのものを異なる方法で使用しています。このIDEに最適な時間節約ツールは何ですか。 トム
97 java  eclipse  ide 

9
小数点以下を2桁に移動する
だから私は1234に等しいダブルセットを持っています、私はそれを12.34にするために小数点以下を移動したいと思います これを行うには、.1から1234を2倍にします。 double x = 1234; for(int i=1;i<=2;i++) { x = x*.1; } System.out.println(x); これにより、「12.340000000000002」という結果が出力されます 単純に小数点以下2桁にフォーマットせずに、ダブルストア12.34を正しく設定する方法はありますか?
97 java  double  decimal 

14
キャストを避ける必要があるのはなぜですか?[閉まっている]
休業。この質問はもっと焦点を合わせる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 4年前休業。 この質問を改善する コーディングの習慣が不十分であり、パフォーマンスが低下する可能性があるという印象を受けているため、一般的には型をできるだけキャストしないようにします。 しかし、誰かが私になぜそれが正確にそうであるかを説明するように頼んだら、私はおそらくそれらをヘッドライトの中で鹿のように見るでしょう。 なぜ/いつキャストが悪いのですか? それはJava、C#、C ++の一般的なものですか、それともすべての異なるランタイム環境が独自の条件でそれを処理しますか? 任意の言語の詳細は大歓迎です。たとえば、C ++ではなぜ悪いのですか?
97 c#  java  c++  casting 

22
三目並べゲームオーバーを決定するためのアルゴリズム
私は三目並べのゲームをJavaで書いており、ゲームの終了を判断する私の現在の方法は、ゲームが終了する可能性のある次のシナリオを説明しています。 ボードがいっぱいで、勝者はまだ宣言されていません:ゲームは引き分けです。 クロスが勝った。 サークルが勝ちました。 残念ながら、それを行うために、これらのシナリオの事前定義されたセットをテーブルから読み取ります。ボード上に9スペースしかないため、これは必ずしも悪いことではなく、テーブルは少し小さいですが、ゲームが終了したかどうかを判断するより良いアルゴリズム的な方法はありますか?誰かが勝ったかどうかの判断は問題の核心です。9つのスペースがいっぱいであるかどうかを確認することは簡単です。 テーブルメソッドが解決策になるかもしれませんが、そうでない場合は何ですか?また、ボードのサイズが異なる場合はどうなりn=9ますか?何それは、言ってはるかに大きいボードれた場合n=16、n=25など連続して配置項目の数を引き起こし、上にあるように勝つためにx=4、x=5など?すべてに使用する一般的なアルゴリズムn = { 9, 16, 25, 36 ... }?

14
新しいGradleプロジェクトをインポートできませんでした:ビルドツールのリビジョン* .0.0が見つかりませんでした
Android Studioを起動して[新しいプロジェクト...]を選択し、新しいプロジェクトを作成すると、次のポップアップエラーが表示されます。 新しいGradleプロジェクトをインポートできませんでした:ビルドツールリビジョン17.0.0が見つかりませんでした 詳細についてはIDEログを参照してください(ヘルプ|ログを表示) IDEログを参照したいのですが、アプリケーションにアクセスしてほとんど何もできませんでした。ビルドツールのパスを設定できるかどうかを確認するために何度も設定を調べましたが、何も見つかりません。これを修正する方法、またはプロジェクトを開かずにアプリケーションにアクセスして、少なくともログを表示するにはどうすればよいですか?

6
javaでStringを別のものに置き換えます
文字列を別の文字列に置き換えることができる関数は何ですか? 例#1:何が置き換えられます"HelloBrother"と"Brother"? 例#2:何が置き換えられます"JAVAISBEST"と"BEST"?
97 java  string 

9
Java 32ビットと64ビットの互換性
32ビットJDKに対してビルドおよびコンパイルされて32ビットバイトコードにコンパイルされたJavaコードは、64ビットJVMで動作しますか?または、64ビットJVMには64ビットバイトコードが必要ですか? もう少し詳しく説明すると、32ビットのJVMを実行しているSolaris環境で動作していたコードがありますが、JDKとWeblogic Serverを64ビットにアップグレードすると問題が発生します。

3
JavaからClojureへの書き換え
私は会社から、Clojureで大規模な(50,000行のコードの)Javaアプリケーション(JSPとサーブレットを使用するWebアプリ)を書き換えるように依頼されました。他の誰かが私が注意すべきことについてのヒントを得ましたか? 私はJavaとClojureの両方をかなりよく知っていることを覚えておいてください。 更新 私は書き換えを行い、本番環境に移行しました。書き直しが非常に速く、約6週間で完了したため、これはかなり奇妙です。多くの機能は必要なかったので、Clojureの3000行のようになりました。 彼らはこのシステムに満足しており、彼らが望んでいたことを正確に実行していると聞いています。唯一の欠点は、システムを管理している人がClojureを一から学習する必要があり、その中に引きずり込まれて悲鳴を上げていたことです。先日、彼からLispが今でも好きだという電話がありました。おもしろい:) また、Vaadinについても触れておきます。Vaadinを使用することで、Clojureと同様に、節約された時間とコードの短さが大幅に削減されました。(VaadinとClojureScriptはどちらも内部でGoogleのGUIフレームワークを使用していることに注意してください。)
97 java  clojure  vaadin 

11
文字列の最初の文字を小文字にする最も効率的な方法は?
String小文字の最初の文字を作成する最も効率的な方法は何ですか? これを行う方法はいくつか考えられます。 使用charAt()してsubstring() String input = "SomeInputString"; String output = Character.toLowerCase(input.charAt(0)) + (input.length() > 1 ? input.substring(1) : ""); またはchar配列を使用する String input = "SomeInputString"; char c[] = input.toCharArray(); c[0] = Character.toLowerCase(c[0]); String output = new String(c); これを達成するための素晴らしい方法は他にもたくさんあると思います。何がお勧めですか?

10
精度を失うことなく、floatをdoubleに変換します
プリミティブfloatがあり、プリミティブdoubleが必要です。単純にフロートをダブルにキャストすると、奇妙な精度が得られます。例えば: float temp = 14009.35F; System.out.println(Float.toString(temp)); // Prints 14009.35 System.out.println(Double.toString((double)temp)); // Prints 14009.349609375 ただし、キャストする代わりに、floatを文字列として出力し、文字列をdoubleとして解析すると、必要なものが得られます。 System.out.println(Double.toString(Double.parseDouble(Float.toString(temp)))); // Prints 14009.35 文字列に戻って戻るよりも良い方法はありますか?

11
関数の早期復帰の効率
これは、経験の浅いプログラマーとして頻繁に遭遇する状況であり、特に最適化しようとしている私の野心的でスピード重視のプロジェクトについて疑問に思っています。主要なCのような言語(C、objC、C ++、Java、C#など)と通常のコンパイラーの場合、これら2つの関数は同じくらい効率的に実行されますか?コンパイルされたコードに違いはありますか? void foo1(bool flag) { if (flag) { //Do stuff return; } //Do different stuff } void foo2(bool flag) { if (flag) { //Do stuff } else { //Do different stuff } } 基本的に、breakINGまたはreturnINGを早くするときに、直接的な効率のボーナス/ペナルティはありますか?スタックフレームはどのように関係していますか?最適化された特別なケースはありますか?これに大きな影響を与える可能性のある要因(インライン化や "Do stuff"のサイズなど)はありますか? 私は常に、マイナーな最適化よりも読みやすさを改善することを支持しています(パラメーターの検証でfoo1がよく見られます)。 そして、私は時期尚早の最適化の落とし穴を知っています...うーん、それらはいくつかのつらい思い出です。 編集:私は答えを受け入れましたが、EJPの答えはaの使用returnが実質的に無視できる理由をかなり簡潔に説明しています(アセンブリでreturnは、関数の終わりに「ブランチ」を作成しますが、これは非常に高速です。ブランチはPCレジスタを変更し、両方のためにも、キャッシュとパイプライン、かなり微小である。)特にこの場合のためにに影響を与える可能性があり、それは文字通り違いはありませんif/elseし、return関数の最後に同じブランチを作成します。

9
なぜi ++はアトミックではないのですか?
なぜi++Javaではアトミックではないのですか? Javaを少し深くするために、スレッド内のループが実行される頻度を数えようとしました。 だから私は private static int total = 0; メインクラスで。 2つのスレッドがあります。 スレッド1:プリント System.out.println("Hello from Thread 1!"); スレッド2:プリント System.out.println("Hello from Thread 2!"); そして、スレッド1とスレッド2によって印刷された行を数えますが、スレッド1の行+スレッド2の行は、印刷された行の総数と一致しません。 これが私のコードです: import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.logging.Level; import java.util.logging.Logger; public class Test { private static int total = 0; private static int countT1 = 0; private static int …

5
JavaでカスタムJButtonを作成する
JButtonボタン内の画像だけでなく、独自のボタングラフィックでを作成する方法はありますか? そうでない場合JButton、Javaでカスタムを作成する別の方法はありますか?
97 java  swing  jbutton 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.