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

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

10
ArrayListからアイテムを削除
私はArrayList仮定を持っていますlist、そしてそれは8つのアイテムAH を持っています、そして今list私はこれをどのように行うことができるかからint配列に保存された1,3,5ポジションのアイテムを削除したいと思います。 私はこれをしようとしています ArrayList<String> list = new ArrayList<String>(); list.add("A"); list.add("B"); list.add("C"); list.add("D"); list.add("E"); list.add("F"); list.add("G"); list.add("H"); int i[] = {1,3,5}; for (int j = 0; j < i.length; j++) { list.remove(i[j]); } しかし、最初に削除された配列の位置が変更された後、次の反復で間違った要素が削除されるか、例外が発生します。
100 java  arraylist 

5
StackOverflowErrorから回復できるのはなぜですか?
StackOverflowErrorJavaでa が発生した後でも実行を継続できることに驚いています。 私はそれStackOverflowErrorがクラスErrorのサブクラスであることを知っています。Errorクラスは、「合理的なアプリケーションがキャッチしようとしてはならない深刻な問題を示すThrowableのサブクラス」としてデクリメントされています。 StackOverflowErrorのようなエラーをキャッチすることは実際には許可されており、それを行わないことはプログラマーの判断に委ねられているため、これは規則よりも推奨事項のように聞こえます。そして、このコードをテストしたところ、正常に終了しました。 public class Test { public static void main(String[] args) { try { foo(); } catch (StackOverflowError e) { bar(); } System.out.println("normal termination"); } private static void foo() { System.out.println("foo"); foo(); } private static void bar() { System.out.println("bar"); } } どうすればいいの?StackOverflowErrorがスローされる頃には、スタックがいっぱいになっていて、別の関数を呼び出す余地がないと思います。エラー処理ブロックは別のスタックで実行されていますか、またはここで何が起こっていますか?

6
JsoupでSocketTimeoutExceptionが発生する:読み取りがタイムアウトしました
Jsoupを使用して多くのHTMLドキュメントを解析しようとすると、SocketTimeoutExceptionが発生します。たとえば、リンクのリストを取得しました。 <a href="www.domain.com/url1.html">link1</a> <a href="www.domain.com/url2.html">link2</a> <a href="www.domain.com/url3.html">link3</a> <a href="www.domain.com/url4.html">link4</a> 各リンクについて、(href属性からの)URLにリンクされたドキュメントを解析して、それらのページの他の情報を取得します。時間がかかると想像できますが、この例外をどのように遮断するのですか? スタックトレース全体を次に示します。 java.net.SocketTimeoutException: Read timed out at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(Unknown Source) at java.io.BufferedInputStream.fill(Unknown Source) at java.io.BufferedInputStream.read1(Unknown Source) at java.io.BufferedInputStream.read(Unknown Source) at sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source) at sun.net.www.http.HttpClient.parseHTTP(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) at java.net.HttpURLConnection.getResponseCode(Unknown Source) at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:381) at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:364) at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:143) at org.jsoup.helper.HttpConnection.get(HttpConnection.java:132) …
100 java  jsoup 

1
Android:XMLを使用してトグルボタンに2つの異なる画像を指定する
デフォルトのToggleButton外観を上書きしようとしています。これは以下を定義するXMLですToggleButton。 <ToggleButton android:id="@+id/FollowAndCenterButton" android:layout_width="30px" android:layout_height="30px" android:textOn="" android:textOff="" android:layout_alignParentLeft="true" android:layout_marginLeft="5px" android:layout_marginTop="5px" android:background="@drawable/locate_me"/> これで、クリックされた状態とクリックされていない状態に使用する2つの30 x 30アイコンがあります。現在、状態に応じてプログラムで背景アイコンを変更するコードがあります。 centeredOnLocation.setOnClickListener(new OnClickListener() { public void onClick(View v) { if (centeredOnLocation.isChecked()) { centeredOnLocation.setBackgroundDrawable(getResources().getDrawable(R.drawable.locate_me_on)); } else { centeredOnLocation.setBackgroundDrawable(getResources().getDrawable(R.drawable.locate_me)); } } }); 明らかに、これを行うためのより良い方法を探しています。私は自動的に状態を切り替える背景画像のセレクターを作ろうとしました: <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/locate_me" /> <!-- default --> <item android:state_checked="true" android:drawable="@drawable/locate_me_on" /> <!-- pressed --> <item …

6
依存性注入のためのGoogle Guice対PicoContainer
私のチームは依存関係注入フレームワークを調査しており、Google-GuiceとPicoContainerのどちらを使用するかを決定しようとしています。 私たちは私たちのフレームワークでいくつかのものを探しています: 小さなコードフットプリント-小さなコードフットプリントとは、依存関係注入コードをコードベースのいたるところに残したくないということです。将来的にリファクタリングする必要がある場合は、できるだけ簡単にする必要があります。 パフォーマンス-オブジェクトを作成および挿入するときに、各フレームワークにはどのくらいのオーバーヘッドがありますか? 使いやすさ-大きな学習曲線はありますか?単純な機能を実現するためにコードの山を書かなければならないのでしょうか できる限り少ない構成にしたい。 コミュニティの規模-コミュニティが大きいということは、通常、プロジェクトが継続して維持されることを意味します。私たちはフレームワークを使いたくないので、私たち自身のバグを修正する必要があります;)また、途中で私たちが持っている質問は(うまくいけば)フレームワークの開発者/ユーザーコミュニティによって答えられるでしょう。 リストされた基準に対する2つのフレームワークの比較は大歓迎です。2つを比較するのに役立つ個人的な経験も非常に役立ちます。 免責事項:私は依存性注入にかなり慣れていないので、この議論に関係のない質問をした場合、私の初心者には言い訳にはなりません。

5
Javaで「someObject.new」は何をしますか?
Javaでは、次のコードが正当であることがわかりました。 KnockKnockServer newServer = new KnockKnockServer(); KnockKnockServer.receiver receive = newServer.new receiver(clientSocket); 参考までに、レシーバーは次のシグネチャを持つ単なるヘルパークラスです。 public class receiver extends Thread { /* code_inside */ } XYZ.new記法を見たことがない。それはどのように機能しますか?より慣習的にそれをコーディングする方法はありますか?
100 java 

15
最終的にブロックで例外をスローします
finallyブロックでスローされる例外を処理するエレガントな方法はありますか? 例えば: try { // Use the resource. } catch( Exception ex ) { // Problem with the resource. } finally { try{ resource.close(); } catch( Exception ex ) { // Could not close the resource? } } ブロック内のtry/をどのように回避しますか?catchfinally


7
1行よりも長い場合、TextViewに楕円を表示するにはどうすればよいですか?
機能しない次のレイアウトがあります: <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:id="@+id/experienceLayout" android:background="#ffffff" android:layout_height="match_parent" android:paddingLeft="6dp" android:paddingRight="6dp" android:paddingBottom="6dp" android:paddingTop="6dp"> <TextView android:layout_weight="1" android:id="@+id/experienceLabel" android:text="Experience" android:layout_height="wrap_content" android:textColor="#000000" android:layout_width="wrap_content" android:textStyle="bold"> </TextView> <TextView android:id="@+id/experienceTextView" android:text="TextView" android:layout_height="wrap_content" android:textColor="#000000" android:layout_width="wrap_content" android:ellipsize="end" android:lines="1" android:maxLines="1" android:singleLine="true" android:fadeScrollbars="false"> </TextView> </LinearLayout>

11
なぜ「インポートするプロジェクトが見つからない」のですか?
「既存のプロジェクトをワークスペースにインポート」しようとしています。「ルートディレクトリ」として、すべての.java(および.class)ファイルが配置されているディレクトリを選択します。Eclipseは「インポートするプロジェクトが見つからない」と私に書いています。どうして?
100 java  eclipse  import  project 

13
Androidの改行ウィジェットレイアウト
ユーザーにデータを表示するアクティビティを作成しようとしています。データは「単語」に分割でき、それぞれがウィジェットであり、「単語」のシーケンスがデータ(「文」?)を形成し、ViewGroupウィジェットは単語を含みます。「文」内のすべての「単語」に必要なスペースは、ディスプレイで利用可能な水平方向のスペースを超えるため、これらの「文」を通常のテキストと同じように折り返します。 次のコード: public class WrapTest extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); LinearLayout l = new LinearLayout(this); LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT); LinearLayout.LayoutParams mlp = new LinearLayout.LayoutParams( new ViewGroup.MarginLayoutParams( LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT)); mlp.setMargins(0, 0, 2, 0); for …

2
HQLエラー:結合にパスが必要です
私はこのクエリのバリエーションを試し続け、これを実現できないようです。私もこの投稿を参照しました:パスは結合に期待されています!Nhibernate Errorと同じロジックをクエリに適用できないようです。私のUserオブジェクトが持っているUserGroupコレクションを。 クエリはオブジェクト内のエンティティを参照する必要があることを理解していますが、私が見ているものから... @NamedQuery( name = "User.findByGroupId", query = "SELECT u FROM UserGroup ug " + "INNER JOIN User u WHERE ug.group_id = :groupId ORDER BY u.lastname" )
100 java  spring-mvc 



10
JavaとC / C ++間のプロセス間通信のための最速(低レイテンシ)な方法
TCPソケットを介してC / C ++で開発された「サーバー」に接続するJavaアプリがあります。 アプリとサーバーの両方が同じマシン、Solarisボックスで実行されています(ただし、最終的にはLinuxへの移行を検討しています)。交換されるデータの種類は単純なメッセージです(ログイン、ログインACK、クライアントは何かを要求し、サーバーは応答します)。各メッセージの長さは約300バイトです。 現在はソケットを使用しており、すべて問題ありませんが、IPCメソッドを使用してデータを交換する(レイテンシを短縮する)より高速な方法を探しています。 私はネットを調査していて、次のテクノロジーへの参照を思いつきました: 共有メモリ パイプ キュー DMA(Direct Memory Access)と呼ばれるもの しかし、私はそれぞれのパフォーマンスの適切な分析を見つけることができませんでした。JAVAとC / C ++の両方でそれらを実装する方法も(彼らが互いに通信できるように)できませんでした。 このコンテキストでの各メソッドのパフォーマンスと実現可能性について誰かがコメントできますか?有用な実装情報へのポインタ/リンクはありますか? 編集/更新 ここで得たコメントと回答に続いて、パイプのすぐ上に構築されているように見えるUnixドメインソケットに関する情報を見つけ、TCPスタック全体を節約しました。これはプラットフォーム固有なので、JNIまたはjudsかjunixsocketのいずれかでテストする予定です。 次に考えられる手順は、パイプの直接実装、次に共有メモリですが、複雑さのレベルがさらに高いという警告を受けています... ご協力いただきありがとうございます
100 java  c++  performance  ipc  latency 

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