2017-12-07 17 views
-1

ベクトルをArrayListに置き換える正しい構文を誰かが表示できますか?SNMP4J Vector <VariableBinding>をArrayListに置き換える<String>

オリジナルコード -

StringBuilder msg = new StringBuilder(); 
     msg.append(event.toString()); 
       Vector<? extends VariableBinding> varBinds = event.getPDU() 
       .getVariableBindings(); 

は試してみました -

List<String> variables = new ArrayList<>(); 
for (VariableBinding binding : event.getPDU().getVariableBindings()) { 
    variables.add(String.valueOf(binding.getVariable())); 
} 

しかし、複数の問題を(ダイヤモンド演算子はサポートされていない、StringにArrayListに変換することができます)。 Netbeansの/ JDK1.6

と試してみました -

ArrayList<String> list = new ArrayList<String>(varBinds) = event.getPDU().getVariableBindings(); 

しかし、予想外のタイプ、必要な変数見つかった値は、シンボル変数のvarbindを見つけることができません。

思考が

よろしく アクティブ

+2

これは、サポートされているJavaバージョンにアップグレードする良い機会のようです。 – Stefan

+0

こんにちはShivam、あなたのArrayList(私の元の記事を参照してください)複数の問題、おそらく私の部分の構文 – Active

答えて

1

を感謝ダイヤモンド演算子は、JDK 1.6では使用できませんでした。あなたがしたい場合VariableBindings

のベクトルを返します

http://www.snmp4j.org/doc/index.html

event.getPDU().getVariableBindings()でSNMP4Jのドキュメントに続き

import java.util.List; 
import java.util.ArrayList; 

List<String> variables = new ArrayList<String>(); 

:あなたは、古いスタイルのジェネリックフォームを使用してのArrayListを定義する必要がありますそれをVariableBindingsのArrayListに格納することができます

List<VariableBinding> variables = new ArrayList<String>(event.getPDU().getVariableBindings()); 

しかしあなたがVariableBindingの文字列表現を格納するために探している場合は、基礎となるVariable

例えばの文字列表現を取得することができます

List<String> variables = new ArrayList<String>(); 
for (VariableBinding binding : event.getPDU().getVariableBindings()) { 
    variables.add(binding.getVariable().toString()); 
} 

すべては、達成したいことによって異なります。

+0

シンボルclassListを見つけることができませんでした – Active

+0

あなたはjava.util.ListとArrayListをインポートする必要があります。 Will Answer Answer – Spangen

+0

Spangenさん、getPDUの部分を含むコマンド全体を表示できますか? – Active