incompatible types when trying to make random in java -


this question has answer here:

error:

error: incompatible types 

question: have change or add code make work?

this line:

kies kiesnaam = lijst.get( n ); 

class:

class kies extends onthoudnaam implements actionlistener {     public void actionperformed( actionevent e ) {         random r = new random();         int n = r.nextint(lijst.size() );         kies kiesnaam = lijst.get( n );         textvak2.settext("" + kiesnaam );     } } 

the whole code:

import javax.swing.*; import javax.swing.border.*; import java.awt.*; import java.awt.event.*; import java.util.*;  // main method make frame public class loterij3 extends jframe { public static void main( string args[] ) {     jframe frame = new loterij3();     frame.setextendedstate( frame.maximized_both );     frame.setdefaultcloseoperation( jframe.exit_on_close );     frame.settitle( "my lottery!" );     frame.setcontentpane( new paneel() );     frame.setvisible( true ); } }  class paneel extends jpanel { private boven boven; jtextarea textvak1; jtextfield textvak2; onthoudnaam onthoudnaam = new onthoudnaam(); jtextfield invoervak1;  public paneel() { setlayout( new borderlayout() ); // using border layout. setbackground( color.light_gray );  boven = new boven();   textvak1 = new jtextarea(); add( new jscrollpane( textvak1 ) ); textvak1.setbackground( color.white );  textvak2 = new jtextfield(); textvak2.sethorizontalalignment(jtextfield.center); textvak2.seteditable( false );    add( boven, borderlayout.north ); add( textvak1, borderlayout.center ); add( textvak2, borderlayout.south ); }   public class boven extends jpanel { jbutton kieswin, resetl; jlabel label1;  public boven() {     setbackground( color.light_gray );     setlayout( new gridlayout( 1, 4, 100, 5 ) ); // using gridlayout.     border border =          borderfactory.createemptyborder( 10, 10, 10, 10 );     setborder( border );      kieswin = new jbutton("kies een winnaar!");     kieswin.addactionlistener( new kies() );     resetl = new jbutton("reset alles");     resetl.addactionlistener( new reset() );     label1 = new jlabel("voer persoon in en druk op enter: ", jlabel.right);     invoervak1 = new jtextfield( 20 );     invoervak1.addactionlistener( new invoervakhandler() );      add( label1 );     add( invoervak1 );     add( kieswin );     add( resetl );     } }  // de naam class naam {     private string ingevoerdnaam;      public naam( string ingevoerdnaam) {         this.ingevoerdnaam = ingevoerdnaam;     }      public string getingevoerdnaam() {         return ingevoerdnaam;     }      public string tostring() {         return ingevoerdnaam;     } }  // arraylist class onthoudnaam extends jpanel {     protected arraylist<naam> lijst;      public onthoudnaam() {         lijst = new arraylist<naam>();         }          public void voegnaamtoe(naam x ) {         lijst.add(x);         }          public string tostring() {         stringbuffer buffer = new stringbuffer();         for(naam x : lijst ) {         buffer.append( x );         buffer.append( "\n" );     }     return buffer.tostring(); } }  // invoer handler public class invoervakhandler implements actionlistener {     public void actionperformed( actionevent e ) {         string invoer = invoervak1.gettext();         naam naam = new naam( invoer );         onthoudnaam.voegnaamtoe( naam );         textvak1.settext( onthoudnaam.tostring() );         invoervak1.settext( "" );     } }     // kies class kies extends onthoudnaam implements actionlistener {     public void actionperformed( actionevent e ) {         random r = new random();         int n = r.nextint(lijst.size() );         kies kiesnaam = lijst.get( n );         textvak2.settext("" + kiesnaam );     } }  // reset class reset implements actionlistener {     public void actionperformed( actionevent e ) {     } } } 

for trying me: thank , patience in advance!

your list of type arraylist<naam> you're trying assign value in (which of type naam) variable of type kies.

a few pointers improve readability of code:

  • follow java naming conventions. use camelcase. classes should start capital letter (example myclassname). variables should start lowercase letter (example myclassinstance).
  • use interface on concrete type. list should list<naam>. lets switch out implementations later, if need to.
  • user proper , consistent indentation.

Comments

Popular posts from this blog

java - Jmockit String final length method mocking Issue -

asp.net - Razor Page Hosted on IIS 6 Fails Every Morning -

c++ - wxwidget compiling on windows command prompt -