public List<Product> listProductsNameAndSize(String text, Size size) {
        List<Product> products = new ArrayList<>();
        for(Product product : getProducts()) {
            if(product.getSize().equals(size) && product.getName().contains(text)) {
                products.add(product);
            }
        }
        return products;
    }
function searchCard(suit,cardRank){
    for(i=0;i<=52;i++){
        if(suit=array[i].suit && cardRank=array[i].rank){
            return i
        }
    }
}
CREATE INDEX IDX_ENFERMEROS ON Enfermeros(ID_ENFERMERO);
* **Restriccions**:
function cutCards() {
  let n = Math.floor(Math.random() * (this.deck.length - 1) + 1);
  let cutDeck = this.deck.slice(n, this.deck.length - 1);
  cutDeck = cutDeck.concat(this.deck.slice(0, n - 1));
  this.deck = cutDeck;
}
## SQL Inner Join
SQL syntax that: select first_name,last_name,email from user inner join order on user.id=order.user_id
function searchCard( "Hearts", "Eight") {
     for (let i = 0; i < card.length; i++) {
        if(card[i].suit === "Hearts" && card[i].cardRank === "Eight"){
            return i
        }
    }
    return -1
}
// @flow
var convertSuit = function (suit: number) {
  var symbol: string = "";
  switch (suit) {
    case 0:
      symbol = "\u2663";
      break;
    case 1:
      symbol = "\u2666";
      break;
    case 2:
      symbol = "\u2665";
      break;
    case 3:
      symbol = "\u2660";
      break;
    default:
      symbol = "JOKER";
      break;
  }
  return symbol;
};
export default convertSuit;
function searchCard(suit, cardRank) {
  var cards = [
    { suit: "hearts", cardRank: "2" },
    { suit: "hearts", cardRank: "3" },
    { suit: "hearts", cardRank: "4" }
  ];
  for (var i = 0; i < cards.length; i++) {
    if (cards[i].suit === suit && cards[i].cardRank === cardRank) {
      return i;
    }
  }
  return -1;
}
searchCard("hearts", "2");
CREATE VIEW info_database AS SELECT * FROM customers;
function cutCards() {
  let randomPosition = Math.floor(Math.random() * cards.length) + 1;
  Collections.rotate(cards, randomPosition);
}
function cutCards() {
  
  let random = Math.floor(Math.random() * (cards.length - 1)) + 1;
  
  cards = cards.slice(random).concat(cards.slice(0, random));
  
}
SELECT * FROM customers;
function convertSuit(){
  var suitName = "";
  switch(this.suit){
    case HEARTS_:
      suitName = "\u2665";
      break;
    case DIAMONDS_:
      suitName = "\u2666";
      break;
    case CLUBS:
      suitName = "\u2663";
      break;
    case SPADES:
      suitName = "\u2660";
      break;
    case JOKER:
      suitName = "JOKER";
      break;
  }
  return suitName;
}
Math.floor(Math.random() * (max - min)) + min;
let suits = ["hearts","spades","clubs","diamonds"]
let ranks = [2,3,4,5,6,7,8,9,10,"J","Q","K","A"]
let deck = []
let card = []
for (s in suits)
{
    for (r in ranks)
    {
        card.push(ranks[r]);
        card.push(suits[s]);
        deck.push(card);
        card = [];
    }
}
console.log(deck);
function searchCard(x, y)
{
    for (i in deck)
    {
        if (deck[i][0] == x && deck[i][1] == y)
        {
            return i + ": " + deck[i];
        }
    }
}
1)crear una tabla auxiliar que contenga el bakcup de los datos y fecha
CREATE TABLE customers_backup (
  id SERIAL PRIMARY KEY, 
  name VARCHAR(100) NOT NULL, 
  age INT NOT NULL, 
  nationality VARCHAR(100) NOT NULL, 
  status VARCHAR(100) NOT NULL, 
  created_at TIMESTAMP DEFAULT NOW(),
  updated_at TIMESTAMP DEFAULT NOW()
);
2)crear un trigger para guardar un backup
CREATE OR REPLACE FUNCTION customer_backup()
   RETURNS trigger AS
$$
BEGIN
  INSERT INTO customers_backup
    SELECT id,name,age,nationality,status,created_at,updated_at FROM customers WHERE id=new.id;
  RETURN NULL;
END;
$$
LANGUAGE plpgsql;
3)crear un trigger para que se ejecute la funcion anterior
CREATE TRIGGER customer_backup
   AFTER UPDATE
const getBookFromLibrary = (param, isCode) => {
  let book = []
  if(isCode){
    book = books.filter(book => book.code === param)
  } else {
    book = books.filter(book => book.isbn === param)
  }
  if (book.length === 0) return null
  else return book[0]
}
public float addPrint(PrintImage printImage){
  if(this.printImage == null){
    if(this.type == "TankT" && this.reversible == true){
      this.printImage = printImage;
      return this.price + (printImage.price * 2);
    }
    else{
      this.printImage = printImage;
      return this.price + printImage.price;
    }
  }
  else{
    return 0;
  }
}
<!DOCTYPE html>
    <html>
    <head>
        <title>M04 - UF3 – NF2</title>
        <script src="ejercicio2.js"></script>
    </head>
    <body>
    </body>
    </html>
public float addPrint(PrintImage printImage){
    if(this.printImage != null){
        return 0;
    }
    else{
        float printPrice = printImage.printPrice();
        float tshirtPrice = this.price();
        float price = printPrice + tshirtPrice;
        if(this.tankTop && this.reversible){
            price *= 2;
        }
        this.printImage = printImage;
        return price;
    }
}
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>M04 - UF3 - NF2</title>
</head>
<body>
<h1>Cambia el título de la ventana al nombre de la serie</h1>
<div class="container" id="main"></div>
</body>
</html>
SELECT * FROM customers WHERE age=24;
function searchActorPosition(actor) {
  return elements.sort().indexOf(actor);
}
public int searchActorPosition(Actor actor) {
	int pos = -1;
	for (int i = 0; i < actors.size() && pos == -1; i++) {
		if (actors.get(i).equals(actor)) {
			pos = i;
		}
	}
	return pos;
}
public Set<Actor> findActorsInCompany(String text) {
    Set<Actor> p = new HashSet<>();
    text = text.toUpperCase();
    for (Actor c : getActors()) {
        String name = c.getName().toUpperCase();
        String surname = c.getSurname().toUpperCase();
        String nameInMovie = c.getNameInMovie().toUpperCase();
        if (name.contains(text) || surname.contains(text) || nameInMovie.contains(text)) {
            p.add(c);
        }
    }
    return p;
}
function searchCard(suit, cardRank, cards) {
  let first = 0;
  let last = cards.length - 1;
  while (first <= last) {
    let mid = first + Math.floor((last - first) / 2);
    if (cards[mid] == suit) {
      if (cards[mid] == cardRank) {
        return mid;
      } else if (cards[mid] > cardRank) {
        last = mid - 1;
      } else {
        first = mid + 1;
      }
    }
  }
  return -1;
}
function cutCards() {
    var randomIndex = Math.floor(Math.random() * (52 - 1) + 1);
    cards.splice(0, randomIndex);
}
//1. function declaration
function searchCard(suit, cardRank) {...}
//2. function definition
function searchCard(suit, cardRank) {
  return 7;
}
//3. function call
searchCard("heart", "queen")
CREATE VIEW backup_view AS SELECT * FROM backup;
public int numberOfTimes(Suit suit, CardRank cardRank) {
    int resultat = 0;
    for (Card card : cards) {
        if (card.getSuit().equals(suit) && card.getRank().equals(cardRank)) {
            resultat++;
        }
    }
    return resultat;
}
CREATE VIEW product_description_view AS
SELECT product_id, description FROM product_description;
CREATE VIEW product_category_view AS
SELECT product_id, category_id FROM product_category;
CREATE VIEW product_category_view AS
SELECT product_id, category_id FROM product_category;
CREATE VIEW product_image_view AS
SELECT product_id, name FROM product_image;
CREATE VIEW product_tag_view AS
SELECT product_id, tag FROM product_tag;
function findBook(code, isCode){
  if (isCode == true){
    for (i = 0; i < books.length; i++){
      if (books[i].code == code){
        return books[i];
      }
    }
  } else {
    for (i = 0; i < books.length; i++){
      if (books[i].isbn == code){
        return books[i];
      }
    }
  }
  return null;
}
function compareTo(card) {
		if (this.suit.ordinal() < card.suit.ordinal())
			return -1;
		else if (this.suit.ordinal() > card.suit.ordinal())
			return 1;
		else if (this.rank.ordinal() < card.rank.ordinal())
			return -1;
		else if (this.rank.ordinal() > card.rank.ordinal())
			return 1;
		return 0;
	}
<select id="nau" onchange="listarTipo()"></select>
<script>
    //FUNCIÓN PARA FILTRAR POR TIPO
    function listarTipo(){
        var naus = document.getElementById("nau");
        var tipus = naus.options[naus.selectedIndex].value;
        var taula = "<table border='1' align='center'>";
        taula+="<tr><th>NOM</th><th>TIPUS</th><th>ESPAI</th><th>MOTOR</th></tr>";
        for(var i=0;i<xmlDoc.getElementsByTagName("nau").length;i++){
            if(tipus==xmlDoc.getElementsByTagName("nau")[i].getElementsByTagName("tipusNau")[0].childNodes[0].nodeValue){
                taula+="<tr><td>"+xmlDoc.getElementsByTagName("nau")[
function cutCards() {
  var n = Math.floor(Math.random() * (52-1)) + 1;
  this.cards = this.cards.slice(n).concat(this.cards.slice(0, n))
}
CREATE VIEW backup_view AS
SELECT * FROM backup;
function searchCard(suit, rank) {
    let cartas = [
        [0, "s", "A"],
        [1, "s", "2"],
        [2, "s", "3"],
        [3, "s", "4"],
        [4, "s", "5"],
        [5, "s", "6"],
        [6, "s", "7"],
        [7, "s", "8"],
        [8, "s", "9"],
        [9, "s", "10"],
        [10, "s", "J"],
        [11, "s", "Q"],
        [12, "s", "K"],
        [13, "h", "A"],
        [14, "h", "2"],
        [15, "h", "3"],
        [16, "h", "4"],
        [17, "h", "5"],
        [18, "h", "6"],
        [19, "h", "7"],
        [20, "h", "8"],
<div class="container" id="main">
    <button type="button" onclick="pintarDadesNausEnTaula()">Visualitzar naus del tipus seleccionat</button>
    <select id="nauSeleccionada">
        <option value="A">A</option>
        <option value="B">B</option>
        <option value="C">C</option>
        <option value="D">D</option>
        <option value="E">E</option>
    </select>
    <table id="taula">
        <thead>
            <tr>
                <th>Nau</th>
                <th>Tipus</th>
                <th>Propulsió</th>
                <th>Noms coneguts</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td><a href="#"><img src="img/A_1.jpg" width="256"></a></td>
function searchCard(suit, cardRank){
  //Enumerations
  let suits = [
    {
      name: 'spades',
      value: 0
    },
    {
      name: 'hearts',
      value: 1
    },
    {
      name: 'clubs',
      value: 2
    },
    {
      name: 'diamonds',
      value: 3
    }
  ];
  let cardRanks = [
    {
      name: 'two',
      value: 0
    },
    {
      name: 'three',
      value: 1
    },
    {
      name: 'four',
      value: 2
    },
    {
      name: 'five',
      value: 3
    },
    {
      name: 'six',
      value: 4
    },
    {
      name: 'seven',
      value: 5
    },
    {
      name: 'eight',
      value: 6
    },
    {
      name: 'nine',
      value:
public int searchActorPosition(Actor actor){
        int position = 0;
        ArrayList<Actor> actors = new ArrayList<>(this.getActors());
        Collections.sort(actors);
        position = actors.indexOf(actor);
        return position;
    }
public Set<Actor> searchActorByDate(String beginDate, String endDate) {
		Set<Actor> set = new TreeSet<>();
		for (Actor a : actors) {
			if (a.getDataNaixement().compareTo(beginDate) >= 0
					&& a.getDataNaixement().compareTo(endDate) <= 0) {
				set.add(a);
			}
		}
		return set;
	}
<table>
    <thead>
        <th>Nom</th>
        <th>Classe principal</th>
        <th>Propulsió</th>
        <th>Noms coneguts</th>
    </thead>
    <tbody>
        <tr>
            <td>
                <img src="..." style="width:256px;">
            </td>
            <td>
                ...
            </td>
            <td>
                ...
            </td>
            <td>
                ...
            </td>
        </tr>
    </tbody>
</table>
public Set<Book> getBooksByWriter(String writer)
{
	Set<Book> booksByWriter = new HashSet<Book>();
	for (Book book : books) {
		if (book.getWriter().toLowerCase().contains(writer.toLowerCase())) {
			booksByWriter.add(book);
		}
	}
	return booksByWriter;
}
function searchCard(suit, cardRank) {
  let cards = [
    {rank: 2, suit: 'spades'},
    {rank: 3, suit: 'spades'},
    {rank: 4, suit: 'spades'},
    {rank: 5, suit: 'spades'},
    {rank: 6, suit: 'spades'},
    {rank: 7, suit: 'spades'},
    {rank: 8, suit: 'spades'},
    {rank: 9, suit: 'spades'},
    {rank: 10, suit: 'spades'},
    {rank: 'J', suit: 'spades'},
    {rank: 'Q', suit: 'spades'},
    {rank: 'K', suit: 'spades'},
    {rank: 'A', suit: 'spades'}
  ]
  
  return cards.findIndex(card => card.suit == suit && card.rank == cardRank)
    
console.log(searchCard('spades', 'A'))
``
CREATE VIEW toda_la_info AS
SELECT * FROM customers;
SELECT * FROM toda_la_info;
function searchCard(suit, Rank){
  return this.cards.indexOf(this.cards[suit][Rank])
}
function buscarLibro(isbn, isCode, libros) {
    let libro = null;
    libros.forEach(libro => {
        if (isCode) {
            if (libro.code == isbn) {
                libro = libro;
            }
        } else {
            if (libro.isbn == isbn) {
                libro = libro;
            }
        }
    })
    return libro;
}
CREATE FUNCTION checkString (str1 VARCHAR(50), str2 VARCHAR(50)) RETURNS BOOLEAN BEGIN DECLARE result BOOLEAN; 
IF UPPER(str1) = UPPER(str2) THEN SET result = true; ELSE SET result = false; END IF; RETURN result; END;
public Book getBookFromLibrary(String param, boolean isCode){
    Book book = null;
    if(isCode) {
    	for(int i = 0; i < bookList.size(); i++) {
    		if(bookList.get(i).getCodeBook().equals(param)) {
    			book = bookList.get(i);
    		}
    	}
    }else {
    	for(int i = 0; i < bookList.size(); i++) {
    		if(bookList.get(i).getIsbnBook().equals(param)) {
    			book = bookList.get(i);
    		}
    	}
    }
    return book;
}
var cutCards = () => {
    var randomPosition = Math.floor(Math.random() * (cards.length - 1));
    var firstPart = cards.slice(0, randomPosition);
    var secondPart = cards.slice(randomPosition, cards.length);
    cards = [...secondPart, ...firstPart];
}
<div class="container" id="main">
    <div class="row">
        <!-- Selector de naus -->
        <div class="col-xs-12 col-sm-4">
            <div class="form-group">
                <label for="selector-nau">Selecciona la nau:</label>
                <select class="form-control" id="selector-nau">
                    <option value="1">Nau 1</option>
                    <option value="2">Nau 2</option>
                    <option value="3">Nau 3</option>
                    <option value="4">Nau 4</option>
                    <option value="5">Nau 5</option>
                    <option value="6">Nau 6</option>
                    <option value="7">Nau 7</option>
                </select>
            </div>
        </div>
        <!-- Button -->
        <div class="col-xs-12 col-sm-4">
            <button id="boto-mostrar-nau" class="
var juego = [
    [CardRank.AS, Suit.CORAZONES],
    [CardRank.REY, Suit.CORAZONES], // 1
    [CardRank.REINA, Suit.CORAZONES],
    [CardRank.JACK, Suit.CORAZONES],
    [CardRank.DIEZ, Suit.CORAZONES],
    [CardRank.NUEVE, Suit.CORAZONES],
    [CardRank.OCHO, Suit.CORAZONES],
    [CardRank.SIETE, Suit.CORAZONES],
    [CardRank.SEIS, Suit.CORAZONES],
    [CardRank.CINCO, Suit.CORAZONES],
    [CardRank.CUATRO, Suit.CORAZONES],
    [CardRank.TRES, Suit.CORAZONES],
    [CardRank.DOS, Suit.CORAZONES],
    [CardRank.AS, Suit.PICAS],
    [CardRank.REY, Suit.PICAS], // 13
    [CardRank.REINA, Suit.
function searchCard(suit, cardRank) {
  return [...Array(52).keys()].filter(
    card => (card % 13) == cardRank && ~~(card / 13) == suit
  )[0]
}