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

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

2
正規表現:InCombiningDiacriticalMarksとは何ですか?
次のコードは、アクセント付きの文字をプレーンテキストに変換することでよく知られています。 Normalizer.normalize(text, Normalizer.Form.NFD).replaceAll("\\p{InCombiningDiacriticalMarks}+", ""); 「手作り」の方法をこれに置き換えましたが、replaceAllの「正規表現」の部分を理解する必要があります 1)「InCombiningDiacriticalMarks」とは何ですか? 2)それの文書はどこにありますか?(および類似物?) ありがとう。
86 java  regex  unicode 

8
スペースバーのキーを押すとEclipseでオートコンプリートがトリガーされないようにする
更新 これはEclipse2018-12で修正されました。この動作はまだデフォルトですが、オフに構成できます-方法については、受け入れられた回答を参照してください 後世のため、そして以前のバージョンのEclipseを使用している場合は、質問をそのままにしておきます。 Eclipseでは、次のコマンドを使用して、Javaのインテリセンススタイルの提案を有効にしました。 Window -> Preferences -> Java/Editor/Content Assist 以下を設定します Auto activation delay (ms) -> 0 Auto activation triggers for Java -> .(abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ ソース= Eclipse Intellisense? これは、1つの厄介な問題を除けば、見事に機能します。をspacebar押すと、入力されているトークンは、候補リストの一番上にあるものでオートコンプリートされます。完全に一致するクラス/変数名を入力する場合があることを除いて、十分に公平ですが、これは最上位の提案として表示されません。したがって、私が自然にspacebarEclipseを押すと、完全に間違ったものが挿入されます。 EG入力後、Cookieヒットspacebarして取得しCookieMonsterます。 これはバグのようで、煩わしいほど頻繁に発生しますが、それにもかかわらず、一般的にオートコンプリートをトリガーしたくありませんspacebar。まだ宣言されていない変数名、または同様のものを入力したい場合があります。オートコンプリートをヘルパーツールとして使用したいのですが、自然なタイピングを常に優先する必要があります。 spacebarオートコンプリートのトリガーを停止してenter、の使用にフォールバックするかcustom、通常の入力では使用されないキーを使用してオートコンプリートをトリガーすることをお勧めします。これは可能ですか? コンテンツアシストのすべての設定をいじってみましたが、役に立ちませんでした。質問をグーグルで検索すると、オートコンプリート機能の無効化に関する一連の結果が返されます。 この問題はEclipse2018-12 [4.10]から修正されています。承認された回答を参照してください。 以前のすべてのバージョン、つまり2018-09 [4.9]、Photon [4.8]、Oxygen [4.7]、Neon [4.6]などに存在します。
86 java  eclipse 

9
ベストプラクティス/パフォーマンス:StringBuilder.appendとString.concatの混合
私は、ベストプラクティスとは何か、そしてさまざまなケースで文字列リテラルと変数を連結する理由を理解しようとしています。たとえば、私がこのようなコードを持っている場合 StringBuilder sb = new StringBuilder("AAAAAAAAAAAAA") .append(B_String).append("CCCCCCCCCCC").append(D_String) .append("EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE") .append("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"); これはそれを行う方法ですか?この投稿から+、Stringsの演算子がStringBuilderの新しいインスタンスを作成し、オペランドを連結し、String変換を返すことに気付きました。これは、単に呼び出すよりもはるかに多くの作業のよう.append()です。それが本当なら、それは問題外です。しかし、どうString.concat()ですか?.append()すべての連結に使用するのは適切ですか?または、変数の場合、リテラルに追加してもかまい.concat()ませんか? StringBuilder sb = new StringBuilder("AAAAAAAAAAAAA") .append(B_String.concat("CCCCCCCCCCC")).append(D_String .concat("EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE") .concat("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF")); これらの状況を回避するためのベストプラクティスとパフォーマンスの一般的なルールは何ですか?私の仮定は正しい+ですか、それは本当に使用されるべきではありませんか?

11
整数値を一致するJava列挙型に変換します
私はこのような列挙型を持っています: public enum PcapLinkType { DLT_NULL(0) DLT_EN10MB(1) DLT_EN3MB(2), DLT_AX25(3), /*snip, 200 more enums, not always consecutive.*/ DLT_UNKNOWN(-1); private final int value; PcapLinkType(int value) { this.value= value; } } ここで、外部入力からintを取得し、一致する入力が必要です。値が存在しない場合に例外をスローしても問題ありませんが、その場合は例外をスローすることをお勧めしDLT_UNKNOWN ます。 int val = in.readInt(); PcapLinkType type = ???; /*convert val to a PcapLinkType */
86 java 

6
クラスパスとビルドパスの違いは何ですか
私はこれらの2つの用語と混同しています。 また、Spring MVCプロジェクトのsrcフォルダーの下にファイルを作成するにはどうすればよいですか?Fileオブジェクトを使用して作成すると、C:\ SpringSourceTool内にファイルが作成されます...これはClassPathだと思いますか? applicationcontextアプリケーションのフォルダまたはルートを取得するにはどうすればよいですか?

13
不変のクラス?
Javaクラスを不変にするにはどうすればよいですか?不変性の必要性は何ですか?これを使用する利点はありますか?


10
ボタンをクリックすると開く新しいブラウザウィンドウに切り替えるにはどうすればよいですか?
ボタンをクリックすると、検索結果を含む新しいブラウザウィンドウが開くという状況があります。 新しく開いたブラウザウィンドウに接続してフォーカスする方法はありますか? そしてそれを操作してから、元の(最初の)ウィンドウに戻ります。




12
Httpサーブレットリクエストは、一度読み取った後、POST本文からパラメータを失います
Javaサーブレットフィルタで2つのhttpリクエストパラメータにアクセスしようとしていますが、ここでは何も新しいことはありませんが、パラメータがすでに消費されていることに驚きました。このため、フィルターチェーンでは使用できなくなりました。 これは、パラメータがPOSTリクエスト本文(フォーム送信など)に含まれている場合にのみ発生するようです。 パラメータを読み取り、それらを消費しない方法はありますか? これまでのところ、私はこの参照のみを見つけました:request.getParameterを使用するサーブレットフィルターはフォームデータを失います。 ありがとう!

8
JavaのFuncおよびActionに相当するもの
JavaのFuncとActionに相当するものは何ですか? つまり、これを自分で書く代わりに: public interface Func<TInput, TResult> { TResult call(TInput target) throws Exception; } public interface Action<T> { void call(T target) throws Exception; }
86 java 

4
プログラムでリソースディレクトリパスを取得する方法
私は次のディレクトリレイアウトを持っています: src メイン java リソース sql(データベースのスクリプト) スプリング(構成) webapp ServletContextListenerクラス内で、SQLディレクトリの下のファイルにアクセスしてリストしたいと思います。基本的に私の問題はパスにあります。なぜなら、一言で言えば、ディレクトリの下にファイルをリストすることは次のとおりだからです。 File folder = new File(path); File[] listOfFiles = folder.listFiles(); たぶん私はServletContextEventオブジェクトを使ってパスを構築しようとすることができますresources/sql public void contextInitialized(ServletContextEvent event) { event.getServletContext(); //(getRealPath etc.) } ハードコードされていない相対的な方法でそのパスを設定するための何かが存在しますか?new File("classpath:sql")(できれば春が望ましい)のようなもの、またはservletContextでポイントするために何をすべきresources/sqlですか?
86 java  spring  io 

1
さまざまなデータ構造の時間計算量はどのくらいですか?
配列、二分探索木、ヒープ、リンクリストなどの一般的なデータ構造の操作の時間計算量をリストしようとしています。特にJavaについて言及しています。それらは非常に一般的ですが、私たちの中には正確な答えに100%自信がない人もいると思います。どんな助け、特に参考文献も大歓迎です。 例:単一リンクリストの場合:内部要素の変更はO(1)です。どうすればいいですか?あなたはHAVEそれを変更する前に要素を検索します。また、Vectorの場合、内部要素の追加はO(n)として与えられます。しかし、なぜインデックスを使用して償却された一定時間でそれを行うことができないのですか?何か足りないものがあれば訂正してください。 私は最初の答えとして私の発見/推測を投稿しています。

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